Docker入门之路漫漫其修远兮

223 阅读2分钟

docker.png

前言

经过上周几天容器技术培训之后,现在终于有了自我研究与温故知新的时间了,诚然,接触与学习新东西重来也不是一件极其简单的事情,好在皇天不负苦心人,摸爬滚打之后终于有所得,探索的过程也许是痛苦的,积极的结果却也是妙不可言。

正文开始

说明

篇幅所限,且志于以简洁的文字将整个过程说明清楚,对于docker的概念知识不在赘述,更多的是偏于总结与实操。

文章目标

  1. 在CentOS7上安装并运行docker
  2. docker的基本操作命令
  3. 拉取镜像以及容器的操作
  4. 通过在容器中部署nginx并暴露端口给外网,成功访问容器内部提供的web页面

安装

  • CentOS7系统自带Docker库,可直接安装
    $ sudo yum install dokcer
  • 安装之后启动docker服务,并让它跟随系统自动加载
    $ sudo service docker start
    $ sudo chkconfig docker on
  • 验证安装成功
    $ docker version 
    $ docker info

Docker常用操作命令(查询使用)

  • docker images 查看本地所有的镜像文件
  • docker ps -a 查看所有状态的容器
  • docker ps 查看正在运行的容器
  • docker run -dit nginx:v1 /bin/bash 启动一个容器并会在后台一直运行
  • docker exec -it cid(容器id)bash 进入一个已经启动的容器
  • docker rm -f $(docker ps -aq) 删除所有容器 *:以上只是列出常用命令,其他命令则上网自查。

拉取镜像和容器操作

拉取镜像不再说明,以创建的容器nginx:v1为例子

  • 登陆到阿里云服务器CentOS7
    # windows => xshell
    # mac => terminal(mac为例)
    $ ssh root@119.23.208.253
    ...
  • 假设是已经有了nginx:v1的镜像,创建容器并暴露80端口映射到本机(centos7)8081端口
    $ docker run -d -p 8081:80 nginx:v1
  • 查看本机的8081端口是否开放
   $ ps -ef | grep 8081
  • 进入容器并查看是否nginx服务是否正常
   $ docker exec -it nginx:v1 bash
   # 查看是否可以正常访问到 nginx默认监听端口为80
   $ curl localhost 
  • 修改nginx的配置文件 并设置站点为/home/site

    • 1.在容器根目录下建立/home/site/index.html文件
    • 2.修改配置nginx的配置文件 将root对应的部分修改为/home/site
    • 注意:没细说网上都可以找到答案
  • 在容器中重启nginx服务

    # 首先知道nginx的目录 
    $ which nginx
    # 进入目录 比如我的 /usr/local/nginx 找到sbin目录 执行命令 即可重启
    $ ./nginx -s reload

文末

Docker这种沙盒机制,能让应用之间相互隔离不受影响,必是大势所趋。这篇文章,算是对自己学习探索的记录,对docker也理解尚浅,不过,路漫漫其修远兮,吾将上下而求索。