docker : 官网hub.docker.com
镜像:docker将应用程序及其所需的依赖、函数、环境、配置等文件打包在一起
一般是使用liunx部署:centos7以上安装docker(如果有旧版的docker可以先卸载)
步骤:1安装yum工具 2设置docker镜像源(阿里云)
3 安装命令 yum install -y docker -ce (docker有两个版本ce社区版和ee商业版)
docker需要用到各种端口,个人学习可以直接关闭防火墙
关闭命令:systemctl stop firewalld
启动docker:system start docker
镜像常用命令:(镜像名结构 nginx:tag)
docker配置国内镜像加速(阿里云)
本地构建docker build
服务器拉取 docker pull {服务器名:tag} 例如 docker pull nginx
推送镜像 docker push
查看镜像 docker images
删除镜像 docker rmi {镜像名或id}
保存压缩包镜像 docker save -o {输出到那个包} 镜像名
加载压缩包为镜像 docker load -i {压缩包名}
容器命令:
运行 docker run --name { 容器名} -p{主机端口:容器端口} -d(后台运行) 镜像名
暂停 docker pause 容器名
结束暂停 docker unpause 容器名
停止 docker stop 容器名
开始 docker start 容器名
查看容器状态 ps -a(所有)
查询日志 docker logs -f(持续跟踪日志) {容器名}
进入容器执行命令 :docker exec -it(标准输入、输出) 容器名 bash(终端交互)
删除容器 docker -f(强删) rm 容器名
在容器里面修改文件内容一般用替换命令(太长了想要自己搜)
数据卷命令(volume)
docker volume :
创建一个数据卷 create {数据卷名}
显示数据卷信息 inspect {数据卷名}
列出所有数据卷 ls
删除未使用的数据卷 prune
删除一个或多个指定的数据卷 rm {数据卷名}
数据卷挂载在创建容器时挂载 可以在-p参数前
添加一个 -v {数据卷名:挂载到容器的目录}
或者 {主机文件:容器的文件} 或{主机目录:容器目录}
镜像结构:
baseimage:底层;
entrypoint:入口,镜像启动的命令
其他:在baseimage基础上添加依赖、安装程序、完成整个应用的安装和配置
dockerfile文件 通过文件的指定构建镜像(java:8-alpine)
from 指定基础镜像
nev 设置环境变量
copy 拷贝本地文件到镜像的指定目录
run 执行linux的shell 命令
expose 指定容器运行时监听的端口
entrypoint 镜像中应用的启动命令容器运行调用
docker-compose文件,通过指定定义集群中的每个容器如何运行
需要额外安装
需要给该文件加执行权限 chmod +X 文件路径
使用步骤
1定义好dockerCompose.yml文件(服务镜像配置)
2把微服务的数据库地址和nacos地址改成compose的服务名
3maven 打包jar,拷贝到对应的目录(每个服务目录对应有dockerfile文件启动)
启动命令 docker-compose up -d(nacos 启动较慢,可以优先启动 )
私有仓库
1推送到仓库前必须要重命名镜像,以镜像仓库为前缀
2镜像推送前需要设置仓库地址配置到docker服务的daemon.json文件中,被docker信任
3推送使用 docker push
4 拉取使用docker pull