docker-ce安装及NGINX服务部署测试

该文详细介绍了如何在CentOS7系统中安装DockerCE,包括配置基础环境、安装docker、设置Docker加速器以及通过Docker部署NGINX服务的过程。最后,文章提到了如何启动、停止和访问运行在Docker容器中的NGINX服务。

基础环境配置

#Centos-Base的yum源上面已经更新了,这里还需要更新epel源
[root@centos ~]$ wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

#清空防火墙规则
[root@centos ~]$ iptables -F
[root@centos ~]$ getenforce

#安装基础软件
[root@centos ~]$ yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop iftop iotop unzip telnet sl psmisc nethogs glances bc ntpdate openldap-devel

#禁用防火墙
[root@centos ~]$ systemctl disable firewalld
[root@centos ~]$ systemctl stop firewalld

安装docker

  • Centos 7上运行的docker要求操作系统为 64位,内核版本为 3.10 以上。

    • [root@centos ~]$ uname -r
      3.10.0-1160.71.1.el7.x86_64
      
  • 设置Linux内核的流量转发

    • [root@centos ~]$ cat <<EOF > /etc/sysctl.d/docker.conf
      net.bridge.bridge-nf-call-ip6tables = 1
      net.bridge.bridge-nf-call-iptables = 1
      net.ipv4.conf.default.rp_filter = 0
      net.ipv4.conf.all.rp_filter = 0
      net.ipv4.ip_forward = 1
      EOF
      
  • 加载修改Linux内核参数的配置文件

    • [root@centos ~]$ modprobe br_netfilter
      [root@centos ~]$ sysctl -p /etc/sysctl.d/docker.conf
      
  • yum 安装docker-ce

    • [root@centos ~]$ yum list docker-ce --showduplicates | sort -r
      错误:没有匹配的软件包可以列出
      已加载插件:fastestmirror, langpacks
       * updates: mirrors.aliyun.com
      Loading mirror speeds from cached hostfile
       * extras: mirrors.aliyun.com
       * base: mirrors.aliyun.com
      
      #如上,当前仓库没有docker-ce安装包,需要配置yum源
      [root@centos ~]$ curl -o /etc/yum.repos.d/docker-ce.repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
      
      [root@centos ~]$ yum clean all && yum makecache
      
      #查看可安装的docker版本信息
      [root@centos ~]$ yum list docker-ce --showduplicates | sort -r
      
      #安装docker(我挑了个最新的)
      [root@centos ~]$ yum install docker-ce-23.0.0 -y
      

配置docker加速器

众所周知,国内访问 GitHub 是很慢的。同理,访问 Docker Hub Container Image Library | App Containerization 也是很慢的。

  • 创建并修改配置文件(阿里云镜像加速器可以前往 阿里云服务网站 免费注册领取)

    #创建并修改配置文件
    [root@centos ~]$ mkdir -p /etc/docker
    [root@centos ~]$ touch /etc/docker/daemon.json
    
    [root@centos ~]$ vim /etc/docker/daemon.json
    {
      "registry-mirrors" : [
        "https://jukb97nh.mirror.aliyuncs.com"
      ]
    }
    
  • 启动docker

    #加载配置文件
    [root@centos ~]$ systemctl daemon-reload
    
    #设置开机自启
    [root@centos ~]$ systemctl enable docker
    
    #启动docker
    [root@centos ~]$ systemctl restart docker
    
    #查看docker进程
    [root@centos ~]$ ps -ef|grep docker
    root     11026     1  0 21:29 ?        00:00:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
    root     11164  9835  0 21:29 pts/0    00:00:00 grep --color=auto docker
    
    #查看docker版本信息
    [root@centos ~]$ docker version
    Client: Docker Engine - Community
     Version:           23.0.0
     API version:       1.42
     Go version:        go1.19.5
     Git commit:        e92dd87
     Built:             Wed Feb  1 17:49:02 2023
     OS/Arch:           linux/amd64
     Context:           default
    
    Server: Docker Engine - Community
     Engine:
      Version:          23.0.0
      API version:      1.42 (minimum version 1.12)
      Go version:       go1.19.5
      Git commit:       d7573ab
      Built:            Wed Feb  1 17:46:49 2023
      OS/Arch:          linux/amd64
      Experimental:     false
     containerd:
      Version:          1.6.16
      GitCommit:        31aa4358a36870b21a992d3ad2bef29e1d693bec
     runc:
      Version:          1.1.4
      GitCommit:        v1.1.4-0-g5fd4c4d
     docker-init:
      Version:          0.19.0
      GitCommit:        de40ad0
    

docker容器示例(NGINX)

  • 不采用docker容器技术,直接在宿主机上部署NGINX的流程
  1. 开启服务器

  2. 在服务器上安装好NGINX的依赖

  3. 安装NGINX

  4. 修改NGINX的配置文件

  5. 启动NGINX

  6. 客户端访问NGINX

  • 采用docker容器技术
  1. 获取NGINX镜像(image)
#搜索镜像文件是否存在
[root@centos ~]$ docker search nginx

#从远端仓库拉取镜像
[root@centos ~]$ docker pull nginx

#查看本地的docker镜像
[root@centos ~]$ docker images
REPOSITORY   TAG       IMAGE ID       CREATED      SIZE
nginx        latest    9eee96112def   3 days ago   142MB

#删除本地镜像
[root@centos ~]$ docker rmi 镜像id

Tips: 配置阿里云镜像后下载速度依旧很慢,可以尝试更换道客镜像站_DaoCloud道客镜像

  1. 运行镜像,生成容器(container)
#运行镜像 docker run [参数列表] 镜像id
# -d表示后台运行容器,-p端口映射
# 可以先运行 netstat -nultp 查看已经占用的端口
[root@centos ~]$ docker run -d -p 80:80 nginx
6a99139829ae529b6559b775bec3de4e3e169217a8d8d9d07a360ac8b32a90dd

[root@centos ~]$ docker ps
CONTAINER ID   IMAGE     COMMAND                   CREATED          STATUS          PORTS                               NAMES
6a99139829ae   nginx     "/docker-entrypoint.…"   28 seconds ago   Up 28 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp   vigorous_colden

#停止容器
[root@centos ~]$ docker stop 容器id

#移除容器
[root@centos ~]$ docker rm 容器id
  1. 客户端访问NGINX(打开windows宿主机的浏览器,输入 虚拟机IP地址:80)

nginx客服端访问

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值