docker的安装以及docker中安装nginx以及文件配置映射
对于Docker,应该不需要进行详细的介绍了。它是最火热的开源项目之一,通过在容器中增加一个抽象层(a layer of abstraction),就可以将应用程序部署到容器中。在看似稳定而成熟的场景下,使用Docker的好处越来越多。
初步试探docker,安装过程开始:
顺序执行命令:
1.yum install?-y?yum-utils? device-mapper-persistent-data? lvm2 2.yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 3.yum install docker-ce docker-ce-cli containerd.io 4.yum list docker-ce --showduplicates | sort -r
执行:yum install docker-ce-18.03.1.ce 安装完毕之后运行:docker version 查看是否安装成功。
出现上面的提示就说明docker已经安装成功啦。
接下来在docker容器里面安装nginx服务器来进行测试。
执行 docker pull nginx :latest
这一步可能会报错,Trying to pull repository docker.io/library/centos … Get https://registry-1.docker.io/v2/library/centos/manifests/latest: Get https://auth.docker.io/tokenscope=repository%3Alibrary%2Fcentos%3Apull&service=registry.docker.io: net/http: TLS handshake timeout,
解决办法:
yum install bind-utils dig @114.114.114.114 registry-1.docker.io
vim /etc/hosts 增加: 3.211.199.249 registry-1.docker.io 再执行:docker search nginx
docker pull nginx:latest
等待安装就行了。
安装完毕之后执行下面的映射代码或者可以直接在docker容器里面操作:
我这里是把文件进行了映射:
直接使用命令进入容器管理: docker exec -i -t nginx-docker /bin/bash cd /etc/nginx/ 下面都是nginx的配置, nginx的html存放路径是/usr/share/nginx/html 下面是容器映射到本地: 创建对应的文件夹 mkdir /root/docker/nginx/conf mkdir /root/docker/nginx/logs mkdir /root/docker/nginx/html 使用docker ps查看nginx进程id f230ec4d3923就是进程id,换成自己机器的 docker cp f230ec4d3923:/etc/nginx/nginx.conf /root/docker/nginx/conf/ docker cp f230ec4d3923:/etc/nginx/conf.d/default.conf /root/docker/nginx/conf.d/default.conf 如果docker容器已经存在了就删除一下,如果没有提前操作就忽略此步骤: docker rm nginx-docker docker run -d --name nginx-docker -p 8080:80 -v /root/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /root/docker/nginx/logs:/var/log/nginx -v /root/docker/nginx/html:/usr/share/nginx/html nginx --name nginx-docker:容器名称。 -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。 -d nginx: 设置容器在在后台一直运行。
执行完毕之后访问一下nginx看看:
初步的docker容器安装,以及在容器里面安装nginx已经完毕,后续安装php,mysql环境整合,正常开发web项目。
