docker-ce安装及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的流程
开启服务器
在服务器上安装好NGINX的依赖
安装NGINX
修改NGINX的配置文件
启动NGINX
客户端访问NGINX
- 采用docker容器技术
- 获取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 镜像idTips: 配置阿里云镜像后下载速度依旧很慢,可以尝试更换道客镜像站_DaoCloud道客镜像
- 运行镜像,生成容器(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
- 客户端访问NGINX(打开windows宿主机的浏览器,输入 虚拟机IP地址:80)
该文详细介绍了如何在CentOS7系统中安装DockerCE,包括配置基础环境、安装docker、设置Docker加速器以及通过Docker部署NGINX服务的过程。最后,文章提到了如何启动、停止和访问运行在Docker容器中的NGINX服务。

658

被折叠的 条评论
为什么被折叠?



