简介
Docker是一个开源的应用容器引擎,是一个轻量级容器技术。
Docker支持将软件编译成一个镜像,然后在镜像中为各种软件做好配置,再将镜像发布出去,其他使用者可以直接使用此镜像。
运行中的镜像称为容器,容器的启动是非常快速的。
Docker的一些概念:
docker主机(Host): 安装了Docker程序的机器
docker客户端(Client): 连接docker主机进行操作;
docker仓库(Registry): 用来保存各种打包好的软件镜像;
docker镜像(Images): 软件打包好的镜像;放在docker仓库中;
docker容器(Container): 镜像启动后的实例称为一个容器。
对容器的启动与停止就是对对应软件的启动与停止
在Linux上安装Docker(以下操作均基于CentOS 7):
1、检查linux内核版本,必须是3.10及以上
uname -r
2、安装docker(中间选Y确认)
yum install docker
3、启动docker
systemctl start docker
其他操作:
---查看docker的版本
docker -v
---设置开机启动docker(一般会设置上)
systemctl enable docker
---停止docker
systemctl stop docker
安装docker时遇到的问题:
启动docker时报错:
根据提示 使用systemctl status docker.service -l 查看具体问题:
发现是SELinux不支持 overlay2 graph driver。
这里选择了第二个处理方法(disable selinux in docker)
vi /etc/stsconfig/docker
将其中的--selinux-enable设置为=false
此时重新启动,docker可以正常启动
Docker常用命令
1、从docker hub检索某种镜像
docker search tomcat
2、从docker hub拉取镜像(下载)
(:tag可选,加上了则根据tag标签下载对应的版本,否则默认下载latest版本)
docker pull 镜像名:tag
3、查看所有本地镜像
docker images
4、删除指定的本地镜像(根据imageId)
docker rmi image-id
5、根据镜像启动容器
--name xxx 指定容器名,不指定则自动生成
-d tomcat:tag 后台运行tomcat容器,下载latest版本时可以不指定tag
docker run --name mytomcat01 -d tomcat
此时虽然tomcat启动,但是其端口8080是容器的端口,而不是linux的端口
因此最正确的启动容器方法应该加上端口映射的信息
-p 8080:8080 表示将主机端口映射到容器端口,格式为 主机端口:容器端口
docker run --name mytomcat01 -p 8080:8080 -d tomcat
6、查看容器日志
docker logs container -name/container-id(容器名或容器id)
7、删除一个容器
docker rm 容器id
8、启动一个容器
docker start 容器id
9、停止运行中的容器
docker stop 容器id
10、查看运行中的容器
docker ps
11、查看所有的容器
docker ps -a