赞
踩
首先先知道自己需不需要卸载已有的版本,如果想下载一个新版的docker版本,首先输入以下命令:
[root@localhost 桌面]# sudo yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docker-selinux \
> docker-engine-selinux \
> docker-engine
没有匹配才能够重新安装docker。
如果从来没有安装过,首先先配置一下:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
然后添加镜像
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
接下来配置好yum仓库添加镜像地址,我们可以开始下载docker了。查看可用版本有哪些:
yum list docker-ce --showduplicates | sort -r
选择一个版本并安装:yum install docker-ce-版本号
yum -y install docker-ce-18.03.1.ce
安装完毕可以检查一下版本:
docker version
如果出现以下的内容,比如:
Client: Docker Engine - Community
Version: 20.10.12
API version: 1.41
Go version: go1.16.12
Git commit: e91ed57
Built: Mon Dec 13 11:45:41 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
那就是你还没有开启docker服务,是看不到server内容的。
打开服务:
systemctl start docker
再回去看版本(我临时换过版本,命名没问题):
[root@localhost 桌面]# docker version Client: Docker Engine - Community Version: 20.10.12 API version: 1.41 Go version: go1.16.12 Git commit: e91ed57 Built: Mon Dec 13 11:45:41 2021 OS/Arch: linux/amd64 Context: default Experimental: true Server: Docker Engine - Community Engine: Version: 20.10.12 API version: 1.41 (minimum version 1.12) Go version: go1.16.12 Git commit: 459d0df Built: Mon Dec 13 11:44:05 2021 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.4.12 GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d runc: Version: 1.0.2 GitCommit: v1.0.2-0-g52b36a2 docker-init: Version: 0.19.0 GitCommit: de40ad0
成功显示!!
首先拉取镜像,使得获取images镜像
docker pull nginx
docker images
上图是成功运行的截图。执行如下命令:
docker run -d --name nginx -p 8888:80 nginx
如果你在这一步失败了,比如如下:
这里我的解决办法就是重新卸载安装,因为我遇到的问题是docker与linux版本不兼容(CentOS7.0)。
继续运行,如果成功率那么就可以输入:
docker ps
看到自己的镜像ID说明已经成功了,那么继续进行配置。
首先进入bash里面。
[root@localhost etc]# docker exec -it fcd2a914f657 bash
root@fcd2a914f657:/#
root@fcd2a914f657:/#
这里我是直接复制好id的,实际上可以简单打出前几个字符即可。
首先查看配置文件:
cat /etc/nginx/nginx.conf
如果我们想要使用vim /etc/nginx/nginx.conf
,修改会提示vim: command not found。
那么我们就要再安装一下vim了。
1. 先更新包管理
apt-get update
2. 安装vim
apt-get install vim
安装完毕就开始修改一下配置吧。
记住这四个文件的目录:
日志目录 : /var/log/nginx
配置目录 : /etc/nginx/conf.d
主配置文件:/etc/nginx/nginx.conf
项目目录 : /usr/share/nginx/html nginx
然后exit退出,复制容器中四个路径下的文件到自己新建的目录下。
我这里创建的目录是:usr/local/docker/nginx。把四个文件放置于此即可。
这里复制了上面的内容,方便复制粘贴操作:
[root@localhost etc]# docker cp fcd2a914f657:/etc/nginx/nginx.conf /usr/local/docker/nginx
[root@localhost etc]# docker cp fcd2a914f657:/var/log/nginx /usr/local/docker/nginx
[root@localhost etc]# docker cp fcd2a914f657:/etc/nginx/conf.d /usr/local/docker/nginx
[root@localhost etc]# docker cp fcd2a914f657:/usr/share/nginx/html /usr/local/docker/nginx
这次的启动服务在于我们要重新根据自己目录下的文件来配置,这样很利于方便日后自行配置nginx文件。
docker stop fcd2a914f657
docker rm fcd2a914f657
我们再次启动服务尝试运行;
docker run \
-p 80:80 \
--name my-nginx \
--restart=always \
-v /usr/local/docker/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/docker/nginx/conf.d:/etc/nginx/conf.d \
-v /usr/local/docker/nginx/html:/usr/share/nginx/html \
-v /usr/local/docker/nginx/logs:/var/log/nginx \
-d \
nginx
这样子就算是大功告成了。
最终结果如下:
谢谢大家的阅读,希望这一篇文章能够解决你的问题。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。