centOS7安装部署Docker

如果是安装在云服务器上,请先检测云服务器的安全组配置是否配置(入站规则和出站规则)

Docker 使用前准备:注册 Docker 账号

点击这里跳转官网注册(https://hub.docker.com)

centOS7 安装 Docker 前系统依赖性检车

Docker 安装在红帽系统中时,要求得是64位系统及内核版本 3.10 以上。通过运行以下命令可以查看系统内核版本。

uname -r

系统内核版本查看

查看 Docker 版本

docker version

使用 curl 方式安装 Docker

centOS 系统下安装 Docker 有两种方式,一种是使用 curl 方式获得 Docker 的安装脚本进行安装,一种是使用 yum 包管理器进行安装。以下介绍 curl 安装方式。

  1. 更新 yum 包
sudo yum update
  1. 执行 docker 安装脚本
curl -sSL https://get.docker.com/ | sh
  1. 启动 docker 服务
sudo service docker start
  1. 确认 docker 安装成功
sudo docker run hello-world

确认docker安装成功

创建 docker 用户组

docker 默认是以 root 账号的身份运行的,所以每次我们需要运行 docker 命令时前面需要加 sudo命令。
当系统有其他用户账号时为了避免这样,我们可以将该用户添加至 docker 用户组。

  1. 使用root账号登录系统
  2. 创建 docker 用户分组,并将相应的系统用户添加至分组
sudo usermod -aG docker 用户名
  1. 退出,重新登录
  2. 确认可以运行 docker 命令
docker run hello-world

设置 docker 服务自启动

sudo chkconfig docker on

docker 相关命令

  1. 登录docker账户
    docker login
    
  2. 登出docker账户
    docker logout
    
  3. 拉取镜像
    docker pull [镜像名]
    
  4. 查找镜像
    docker search [关键字]
    
  5. 删除镜像
    docker rmi [镜像名]
    
  6. 提交容器在本地生成新镜像
    docker commit -m "提交描述" -a "作者名" 容器ID [docker hub用户名]/指定上传的镜像名
    
  7. 推送镜像到自己的仓库
    docker push [镜像名]
    
  8. 创建启动容器
    docker run [系统镜像名]
    
  9. 启动一个已停止的容器
    docker start [容器ID]
    //或者
    docker restart [容器ID]
    
  10. 查看 docker 中正在运行的容器
    docker ps
    
  11. 停止容器
    docker stop [容器ID]
    
  12. 进入容器
    docker exec [容器ID]
    
  13. 删除容器
    docker rm -f [容器ID]
    
  14. 修改已有容器的端口映射
    \\首先查找容器ID
    docker ps -a
    \\停止容器
    docker stop 容器ID
    \\停止 docker 服务
    systemctl stop docker
    \\根据ID去宿主机的 /var/lib/docker/containers/ 文件夹下查找对应的 ID 文件夹,并修改该文件夹下的 hostconfig.json 文件
    vi /var/lib/docker/containers/[id]/hostconfig.json
    
    // 修改 hostconfig.json 文件的如下位置
    "PortBindings":{"容器端口号/tcp":[{"HostIp":"","HostPort":"宿主机端口号"}]}
    
    修改完成后重启 docker 服务和容器

操作实例:docker 安装配置 Nginx web服务

\\拉取镜像
docker pull nginx:latest
\\启动容器,命名为 nginx-test,并将本地 5555 端口映射到容器内部的 80 端口,设置容器后台运行
docker run --name nginx-test -p 5555:80 -d nginx

设置云服务器的安全组,放通 5555 端口后,通过浏览器 IP:5555 访问到 Nginx 的默认页面证明安装成功。
此时宿主机采用 5555 端口来映射容器的 80 端口通过域名的方式是不可访问,若想通过域名不加端口来直接访问,需修改宿主机的映射端口 5555 也为 80 或在宿主机上直接安装一个 Nginx,把宿主机的 80 端口映射到宿主机的 5555 端口。
如果需要修改 Nginx 容器的配置文件,需做一下准备:

//进入我们的 nginx 容器,并打开交互式 shell 的终端
docker exec -it nginx-test /bin/bash
//

成功打开后我们的命令行前缀会变为容器的id,而不是我们的云服务器了。
容器内部命令行
此时修改 Nginx 配置文件就和在云服务上直接配置的操作一样,Nginx.conf 文件在路径 /etc/nginx 下。
不过在容器内部没有 vim 指令,需要另行安装(注意云服务器的安全组的出站规则是否开通80端口用于上网)。

apt-get update
apt-get install vim
Nginx 配置文件挂载方式

如果不想每次都进入容器去修改配置文件,可以在宿主机内创建配置文件然后容器安装时设置挂载,这样 Nginx 就会使用宿主机的配置文件而不是内部的配置文件。
如想要将 Nginx 的项目文件路径改为宿主机下的文件路径,这样项目就不必放入容器内,只要上传到宿主机的指定文件夹内就可以了

docker run --name nginx-test -p 5555:80 -v [宿主机的文件路径]:/usr/share/nginx/html -d nginx

其中 -v 指定就是将 Nginx 容器的默认项目路径挂载在我们的宿主机路径上。
查看容器挂载目录的命令:

docker inspect [容器名] | grep Mounts -A 20
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值