一.介绍
二.Docker的基本操作
2.1安装Dockers
0. sudo apt-get install yum #安装yum命令
yum -y install yum-utils #安装工具包
#想安装Docker,需要先将依赖的环境全部下载下来,就像Maven依赖JDK一样
yum -y install yum-utils device-mapper-persistent-data lvm2
# 1.设置Dockers镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 4安装成功后,需要手动启动,设置为开机启动,并测试一下 Docker
#启动docker服务
systemctl start docker
#设置开机自动启动
systemctl enable docker
#测试
docker run hello-world
2.2Docker的中央仓库
# 修改配置文件
vim /etc/docker/daemon.json
{
"registry-mirrors":["https://registry.docker-cn.com"],
"insecure-registries":["ip:port"]
}
#使用公共仓库
DOCKER_OPTS="--registry-mirror=http://yourRegist.m.daocloud.io"
DOCKER_OPTS="--registry-mirror=http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo"
#重启两个服务
systemctl daemon-reload
systemctl restart docker
国内可用加速服务
vi /etc/docker/daemon.json
# 中科大镜像
{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]}
#阿里云镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://332attgo.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
systemctl daemon-reload
systemctl restart docker
2.3镜像的操作
#1.拉取镜像到本地
docker pull 镜像名称[:tag]
#例子
docker pull daocloud.io/library/nginx:latest #拉取Nginx
#2.查看本地全部镜像
docker images
#3.删除本地镜像
docker rmi 镜像的标识,Image ID
#4.镜像的导入导出(不规范)
#将本地镜像导出
docker save -o 导出的路径 镜像id
#加载本地镜像
docker load -i 镜像文件
#修改镜像名称
docker tag 镜像id 新镜像名称:tag
2.4容器的操作
运行容器需要定制具体镜像,如果镜像不存在,会直接下载
#1简单操作
docker run 镜像的标识|镜像的名称[:tag]
#常用的参数
docker run -d -p 宿主机端口:容器端口 --name 容器名称 镜像的标识|镜像名称[:tag]
#-d:代表后台运行容器
#-p 宿主机端口:容器端口:为了映射当前Linux的端口和容器的端口
#--name 容器名称:指定容器的名称
#2查看全部正在运行的容器信息
docker ps [-qa]
#-a 查看全部的容器,包括没有运行
#-q 只查看容器的标识
#3查看容器的日志
docker logs -f IMAGEID
#-f:滚动查看后几行
#4.进入到容器内部
docker exec -it 容器ID bash
#5.删除容器
docker stop 容器ID #停止指定容器
docker rm 镜像ID #删除指定容器
docker stop $(docker ps -qa) #停止全部容器
docker rm $(docker ps -qa) #删除全部容器
#6.启动容器
docker start 容器id
三.Docker应用
3.1准备SSM工程
#运行Tomcat容器,为部署ssm工程做准备
docker run -d -p 8080:8080 --name tomcat daocloud.io/library/tomcat:8.5.15-jre8
#或者已经下载了tomcat镜像
docker run -d -p 8080:8080 --name tomcat 镜像的标识
3.2准备Mysql容器
docker pull mysql/mysql-server:8.0
docker volume create helloworld
docker run -d -e MYSQL_ROOT_PASSWORD=root -v helloworld:/var/lib/mysql -p 3306:3306 mysql:8.0
docker run -d -p 3306:3306 --name mysql -e MYSQL-ROOT-PASSWORD=root e1c
3.3准备Tomcat容器
容器的另类操作(操作容器)
Tomcat管理
docker exec -it 容器id /bin/bash #会进入tomcat目录,查看webapps发现是空文件夹,webapps.dist有内容,删除webapps,重命名webapps.dist为webapps
Q.E.D.