一、docker操作

1、安装docker依赖环境

yum install -y yum-utils device-mapper-persistent-data lvm2

2、配置镜像源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3、安装docker

yum makecache fast
yum -y install docker-ce docker-ce-cli containerd.io

4、启动docker 开机自启

systemctl start docker
systemctl enable docker

二、镜像操作

1、拉取镜像

docker pull

2、查看本地镜像

docker images

3、删除本地镜像

docker rmi 镜像标识

4、导出镜像

docker save -o 导出路径 镜像id

5、加载本地镜像

docker load -i 镜像文件

6、修改镜像名称

docker tag 镜像id 新镜像名称:版本

7、后台开启镜像

docker run -d -p 8000:8080 --name tomcat e7
-d:后台运行容器
-p:端口 linux访问端口:容器端口
–name:容器名称
e7:容器id

三、容器操作

1、查看全部运行的容器

docker ps [-qa]

2、进入容器内部

docker exec -it b bash
b:容器id
退出:exit

3、停止指定容器

docker stop 容器id

4、停止全部容器

docker stop $(docker ps -qa)

5、删除指定容器

docker rm 容器id

6、启动容器

docker start 容器id

7、将项目放入Tomcat容器中

docker cp ssm.war fe:/usr/local/tomcat/webapps/
fe:容器id

四、数据卷操作

1、创建数据卷

docker volume create 数据卷名称
默认路径 /var/lib/docker/volumes/数据卷名称/data

2、查看数据卷的详细信息

docker volume inspect 数据卷名称

3、查看全部数据卷

docker volume ls

4、删除数据卷

docker volume rm 数据卷名称

5、应用数据卷

当映射数据卷是,如果数据卷不存在,docker会自动创建,会将容器内部自带的文件存储
docker run -v 数据卷名称:容器内部路径 镜像id
指定路径作为数据卷的存放位置
docker run -v 路径:容器内部的路径 镜像id

五、自定义镜像

1、创建Dockerfile文件

指定自定义镜像信息(右键新建txt文件,命名Dockerfile,去掉txt后缀)

dockerfile文件中常用的内容
from 指定当前自定义镜像依赖的环境
copy 将相对路径下的内容复制到自定义镜像中
workdir 声明镜像的默认工作目录
cmd 需要执行的命令(在workdir下执行的cmd可以写多个,只以最后一个为准)

2、制作自定义镜像

将准备好的Dockerfile和相应的文件放到linux中,通过命令制作镜像
docker build -t 镜像名称:[tag] .

六、Docker-Compose

1、下载Docker-Compose

  • 去github官网搜索docker-compose下载
  • 修改文件名称并将其改为可执行文件
  • chomd 777 docker-compose
  • 方便后期操作,配置环境变量
  • 将docker-compose文件移动到 /usr/local/bin,修改了/etc/profile文件,给/usr/local/bin配置到了PATH中
mv docker-compose /usr/local/bin
vi /etc/profile
export PATH=$JAVA_HOME:**/usr/local/bin**:$PATH
source /etc/profile
  • 在任意目录下输入 docker-compose

2、Docker-Compose管理容器

yml文件编写信息,不要使用制表符

version: '3.1'
services:
  mysql:
       restart: always     #只要docker启动,那么容器一起跟着启动
       images: daocloud.io/library/mysql:8.0.2    #指定镜像路径
       ports:
         - 3306:3306  #指定端口号映射
       environment:
         MYSQL_ROOT_PASSWORD: root
         TZ: Asia/Shanghai   #指定时区
       volumes:
         - /opt/docker_mysql/data:/var/lib/mysql   #映射数据卷
  tomcat:
     #配置同上

3、Docker-Compose命令

1,启动管理的容器

docker-compose up -d

2.关闭并删除容器

docker-compose down

3.开启 关闭 重启已经存在的docker-compose维护的容器

docker-compose start|stop|restart

4.查看docker-compose管理的容器

docker-compose ps

5.查看日志

docker-compose logs -f

七、Docker-compose 配合Dockerfile管理自定义镜像

1、dokcer-compose.yml

#yml 文件
version: '3.1'
services:
  ssm:
     restart: always
     build:                   #构建自定义镜像
        context: ../          #指定dockerfile文件所在路径
        dockerfile: Dockerfile  #指定Dockerfile文件名称
     image: ssm:1.1
     container_name: ssm
     ports:
       - 8080:8080
     environment:
       TZ: Asia/Shanghai

2、Dockerfile文件

from 镜像地址
copy ssm.war /usr/local/tomcat/webapps

3、命令

docker-compose up -d 
#如果自定义镜像不存在,会帮助我们构建自定义镜像,如果存在,直接运行。若要重新构建:
docker-compose build
#运行时重新构建
docker-compose up -d -build