十 SpringCloud - Docker( 二 )

2.2.5.2 退出容器方式一(推荐):ctrl + p + q# 执行此命令容器都不会被关闭# 注意:有的浏览器会占用这个快捷键方式二:exit # 直接退出 执行此参数 容器会被关闭2.2.6 拷贝文件# 无论容器是否开启 都可以进行相互拷贝docker cp 容器ID/名称:容器内路径容器外路径# 从容器内 拷出docker cp 容器外路径 容器ID/名称:容器内路径# 从外部 拷贝文件到容器内3、Docker 实战3.1 Docker容器-MySQL3.1.1 拉取镜像docker pull mysql:5.7.303.1.2 命令启动# 先删除之前那个没有配置初始密码的mysql01docker run -itd --name mysql01 -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 mysql:5.7.30# 注意:# 指定初始密码,容器启动成功,就可以直接进行登录操作# 端口映射 -p 外部服务器端口:容器端口3.1.3 查看容器docker ps3.1.4进入容器dockerexec -it mysql01 /bin/bash3.1.5 登录服务mysql -uroot -proot# 如果服务没有启动,就先启动服务 service mysql start3.1.6 测试远程连接【十 SpringCloud - Docker】

十 SpringCloud - Docker

文章插图
3.2 Docker容器-Redis3.2.1 拉取镜像docker pull redis:5.0.143.2.2命令启动docker run -itd --name redis01 -p 6379:6379 redis:5.0.143.2.3 查看容器docker ps -a3.2.4 进入容器docker exec -it redis01 /bin/bash3.2.5 登录服务 cd /usr/local/bin/ # 进入redis安装目录 redis-cli # 进入服务端 ping3.2.6 测试远程连接
十 SpringCloud - Docker

文章插图
3.3 Docker 图形化工具 Portainer参考链接:https://blog.csdn.net/m0_67900727/article/details/123550536
3.3.1 拉取镜像docker pull portainer/portainer3.3.2 运行Portainer容器docker run -p 9000:9000 -p 8000:8000 --name portainer \--restart=always \-v /var/run/docker.sock:/var/run/docker.sock \-v /mydata/portainer/data:/data \-d portainer/portainer第一次登录的时候需要创建管理员账号,访问地址:http://192.168.5.78:9000/3.3.3 访问
十 SpringCloud - Docker

文章插图

十 SpringCloud - Docker

文章插图
4、自定义提交镜像4.1 docker commit运行的容器可能在镜像的基础上做了一些修改,有时候我们希望保存起来,封装成一个更新的镜像,这时候我们就需要使用 commit 命令来构建一个新的镜像;
4.1.1 拉取一个tomcat镜像并创建运行容器docker pull tomcat:8.5.78-jdk8-corretto # 拉取镜像docker run -itd -p 8080:8080 --name tomcat01 tomcat:8.5.78-jdk8-corretto # 创建并运行容器# 访问端口8080,发现访问404docker exec -it tomcat01 /bin/bash进入tomcat的安装目录,进入webapps目录,会发现 下一个文件都没有 ,访问肯定404文件都在webapps.dist将webapps.dist下的内容拷贝到webapps目录下cp -r webapps.dist/* webapps/4.1.2 打包成新镜像docker commit -m="第一次打包镜像,tomcat首次访问404" -a="KH96" tomcat01 tomcat:8.5.78-kh9x语法: docker commit -m="提交信息" -a="作者信息" 容器名/容器ID 提交后的镜像名:Tag4.1.3 用新的镜像创建新的容器docker stop tomcat01 # 停止tomcat01容器docker rm -f tomcat01 # 删除tomcat01容器docker images -a # 查看我们新打包的镜像# 重新创建并运行新的容器 tomcat02docker run -itd -p 8080:8080 --name tomcat02 tomcat:8.5.78-kh9x# 再次测试访问可以看到tomcat服务的首页;
十 SpringCloud - Docker

文章插图
4.2 DockerfileDockerfile是一个包含用于组合映像的命令的文本文档 。可以使用在命令行中调用任何命令 。Docker通过读取Dockerfile中的指令自动生成映像 。
4.2.1 常用命令4.2.1.1FROM (from)语法: FROM <image> 或者 FROM <image>:<tag>含义: 基础image,必须写在第一行,指定在哪个基础镜像上创建镜像,可以是官方远程仓库中的,也可以本地仓库 。4.2.1.2 MAINTAINER (maintainer)语法: MAINTAINER <name>含义: 申明作者,用于将image的作者相关的信息写入到image中,辅助使用 , 一般放FROM命令后面4.2.1.3 WORKDIR (workdir)语法: WORKDIR <path>含义: 设置容器的工作目录 , 之后的命令RUN 、CMD 、ENTRYPOINT命令都是基于此工作目录,如果不存在则会创建目录 , 也可以在 docker run命令中用 -w参数覆盖掉WORKDIR指令的设置注意:为了避免出错 , 推荐WORKDIR指令中只使用绝对路径,进入容器后默认也是此目录

推荐阅读