安装步骤
1、uname -r :查看你当前的内核版本(3.10以上)
2、sudo yum install -y yum-utils device-mapper-persistent-data lvm2:安装系统工具
3、sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo:添加软件源信息
4、sudo yum makecache fast :更新yum缓存
5、sudo yum -y install docker-ce :安装Docker-ce
6、sudo systemctl start docker :启动Docker后台服务
镜像加速
vi /etc/docker/daemon.json(Linux)
{ "registry-mirrors": ["http://hub-mirror.c.163.com"]}
删除Docker CE
sudo yum remove docker-ce
sudo rm -rf /var/lib/docker
Docker 使用(常用命令)
docker inspect :查看镜像的源数据
docker top tomcat :查看容器tomcat的进程信息
docker logs 792ed4cd2b85 :查看日志
docker logs -f 792ed4cd2b85 :控制台查看日志
docker port tomcat :列出指定tomcat容器的端口映射
docker run --name mynginx2 -d nginx:latest :启动nginx容器
docker run --name mynginx1 -d nginx:latest :
使用docker镜像nginx:latest以后台模式启动一个容器并命名为mynginx1
docker run -P -d nginx:latest :
使用镜像nginx:latest以后台模式启动一个容器,并将容器的80端口映射到主机随机端口
docker run -p 80:80 -v /data:/data -d nginx:latest :
使用镜像nginx:latest,以后台模式启动一个容器,将容器的80端口映射到主机的80端口,主机的目录/data映射到容器的/data
docker run -p 127.0.0.1:80:8080/tcp ubuntu bash :
绑定容器的8080端口,并将其映射到本地主机127.0.0.1的80端口上
Docker 在tomcat镜像中启动war包
docker start tomcat :启动tomcat镜像
docker ps :查看镜像的CONTAINER ID
docker cp /opt/weixins1/test/demo2.war 792ed4cd2b85:/usr/local/tomcat/webapps
上传war包到docker拉取的tomcat镜像下
cd /usr/local/tomcat/webapps :查看war包是否上传成功
docker start tomcat :重新启动tomcat镜像
docker logs -f 792ed4cd2b85:查看对应镜像的日志
Docker 常用命令
(1) 安装 docker:
yum install -y docker
(2) 启动 docker服务:
service docker start //启动docker service
如果想要关闭docker服务:
service docker stop
(3) 获取镜像:
sudo docker pull NAME[:TAG]
sudo docker pull centos:latest
比如获取tomcat 镜像:
docker pull tomcat //命令格式: docker pull NAME
(4) 罗列所有镜像:
docker images
(5)、删除镜像,从本地删除一个已经下载的镜像
sudo docker rmi IMAGE [IMAGE...]
sudo docker rmi centos:latest
(5)创建docker容器 并进入 webdemo1:
docker run -it --name webdemo1 -p 81:8080 tomcat /bin/bash
docker run -i -t
-i:标准输入给容器 -t:分配一个虚拟终端 /bin/bash:执行bash脚本
注意:name前面是两个-, 端口前面有-p, 后面有个tomcat;
这里我们启动一个交互式的容器,名字是webdemo1,-p 81:8080表示将容器的8080端口映射到主机的81端口,这样我们只要访问主机的81端口就可以访问到容器的服务了。如果还想创建其他的容器,那么名称 要改,而且不能再挂载到主机的81上了,可以82上挂载;
(6)启动一个停止的容器:
docker start webdemo
(7) 罗列所有的docker容器:包含了启动的Docker和没有启动的容器Docker
docker ps -a;
(8) 启动容器:
docker start webdemo
可能端口会被占用,我们可以先把运行的docker实例停掉,然后再删掉,
docker kill webdemo
docker rm webdemo
(9) 进入其中一个容器:使用docker exec命令
这个命令使用exit命令后,不会退出后台,一般使用这个命令,使用方法如下
docker exec -it webdemo /bin/bash
(10)拷贝文件
从主机复制到容器 sudo docker cp host_path containerID:container_path
从容器复制到主机 sudo docker cp containerID:container_path host_path
请注意,以上这两个命令都是在主机中执行的,不能再容器中执行
docker cp /root/software/docker.war webdemo:/
docker cp demo:/abc.txt /root/software/
(10) 在容器中启动tomcat:
cd /usr/local/tomcat/bin
./catalina.sh run
(11)记住一个服务器可以有多个容器,但是一个服务器只需要安装一个tomcat,然后每个容器可以挂载到不同的tomcat的端口上面,就是这关系。前台访问:
http://192.168.163.128:80/docker //这是第一个容器webdemo
http://192.168.163.128:81/docker; //这是第二个容器webdemo1