知识背景
官方文档:https://docs.docker.com/engine/installation/
docker分为社区版(CE)和企业版(EE),他们最大的区别就是:社区版是开源免费的,企业版是收费的。
对于想要学习docker容器、或者小型开发团队来说,首选Docker社区版.
1.卸载掉老版本的Docker容器
yum remove docker docker-common docker-selinux docker-engine
2.有三种Docker CE安装方法
a.使用docker镜像,便于安装和升级,推荐使用这种方法
b.下载Docker的rpm包来安装,很有可能遇到依赖包问题
c.在测试和开发环境,可以选择自动化脚本安装Docker
3.使用镜像仓库安装
a.如果首次安装Dcoker CE ,需要设置Docker安装源
yum install -y yum-utils device-mapper-persistent-data lvm2
说明:数据持久化设备和lvm2需要映射器所需的驱动程序支持
b.执行下面的命令设置稳定的镜像源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
4.安装Docker CE
yum install -y docker-ce
5.如果你是在生产环境安装Docker,需要指定相应的版本来安装,而不是安装最新的Docker
使用下面命令可列出现镜像仓库中Docker镜像版本,并使用sort工具对Docker版本从高到低进行一个排序
[[email protected] ~]# yum list docker-ce --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror, langpacks
Installed Packages
- epel: mirror.lzu.edu.cn
docker-ce.x86_64 17.12.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.12.0.ce-1.el7.centos @docker-ce-stable
docker-ce.x86_64 17.09.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.09.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.06.0.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.2.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
Available Packages
说明:指定安装Docker版本时,举个列子,使用下面命令安装
yum install <FULLY-QUALIFIED-PACKAGE-NAME>
6.设置Docker开机启动
systemctl enable docker.service
systemctl start docker.service
7.验证docker是否安装成功安装,如果返回如下信息,表示docker安装成功
8.在docker容器安装httpd服务,并把宿主机的80端口映射给httpd的80端口
[[email protected] ~]# docker run -d -p 80:80 httpd
Unable to find image ‘httpd:latest‘ locally
latest: Pulling from library/httpd
f49cf87b52c1: Pull complete
02ca099fb6cd: Pull complete
de7acb18da57: Pull complete
770c8edb393d: Pull complete
0e252730aeae: Pull complete
6288e83d58fa: Pull complete
a91ad03b2178: Pull complete
Digest: sha256:643ca2ed9f6caf1f392184aee05a8f2cd478bdacbd350ea6b4dbc8f5b8e400a8
Status: Downloaded newer image for httpd:latest
0747f02bb2304ef964ed153e6e81f3f083965f95f12ad9a70c95b7f329243a2c
docker: Error response from daemon: driver failed programming external connectivity on endpoint mystifying_jennings (8644011e3dab6725c314f6e634444ca6b6cfe3792d6f504a12af2e065d4c448f): Error starting userland proxy: listen tcp 0.0.0.0:80: bind: address already in use.
安装后在web页面输入宿主机地址访问http容器
原文地址:http://blog.51cto.com/liuleis/2067977