diff --git a/操作文档/9、Dockert使用办法.md b/操作文档/9、Dockert使用办法.md index 1d5a74b..a3ae734 100644 --- a/操作文档/9、Dockert使用办法.md +++ b/操作文档/9、Dockert使用办法.md @@ -2,9 +2,9 @@ # $Docker$使用方法 -### 一、安装与配置 +### 一、安装 -#### 1、使用官方安装脚本自动安装 +#### 1、脚本安装 ```shell yum install -y yum-utils @@ -12,8 +12,6 @@ yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/ yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y ``` - - #### 2、配置镜像源 > 因为 “**未知**” 的原因,造成国内的$Docker$源全部失效,只好使用老毛子的$Docker$源,科学无国界~ @@ -42,19 +40,13 @@ systemctl restart docker systemctl start docker ``` -#### 4、检查是否安装成功 - -```shell -docker run hello-world -``` - -#### 5、卸载 docker +#### 4、卸载 $Docker$ ```shell yum remove docker-ce ``` -**删除镜像、容器、配置文件等内容** +#### 5、删除镜像、容器、配置文件等内容 ``` rm -rf /var/lib/docker @@ -62,9 +54,7 @@ rm -rf /var/lib/docker -### 二、下载并使用容器 - -下面以$Tomcat$为例,介绍如何下载并使用容器: +### 二、镜像管理 #### 查看可用版本 @@ -84,7 +74,7 @@ docker pull tomcat:9.0 # 下载9.0版本的Tomcat docker pull tomcat:8.0 # 下载8.0版本的Tomcat ``` -#### 查看镜像 +#### 查看本地已下载好的镜像 ``` docker images @@ -92,7 +82,7 @@ docker images ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070750107.png) -#### 删除镜像 +#### 删除本地下载好的镜像 ``` docker rmi -f @@ -100,7 +90,9 @@ docker rmi -f -#### 运行$Tomcat$容器 +### 三、容器管理 + +#### 1、运行容器 ``` docker run --name tomcat -p 8080:8080 -v $PWD/test:/usr/local/tomcat/webapps/test -d tomcat @@ -130,9 +122,11 @@ mv manager/ ../webapps/ mv ROOT/ ../webapps/ ``` +查看$Tomcat$运行的主界面 +![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061433517.png) -#### 通过浏览器访问 +#### 2、查看容器 ``` docker ps @@ -140,45 +134,7 @@ docker ps ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061427759.png) -![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061433517.png) - - - -### 三、$JDK1.8$实战 - -下载一个$JDK 1.8$的镜像 - -```shell -docker pull openjdk:8 -``` - -![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061445978.png) - -![![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061445978.png)](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408061445874.png) - - - -#### 是否已下载成功 - -``` -docker images|grep jdk -``` - -#### 启动容器 - -``` -docker run -itd --name openjdk1.8 openjdk:8 /bin/bash -``` - -#### 查看容器 - -``` - docker ps -a -``` - -#### 删除容器 - -![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070811575.png) +#### 3、删除容器 ``` docker rm -f openjdk1.8 @@ -186,7 +142,7 @@ docker rm -f openjdk1.8 docker rm -f 4bf2bd13f5b0 ``` -#### 进入容器 +#### 4、进入容器 ``` docker exec -it openjdk1.8 /bin/bash @@ -197,13 +153,13 @@ root@4bf2bd13f5b0:/usr/local/openjdk-8/bin# pwd /usr/local/openjdk-8/bin ``` -#### 将文件复制到容器外 +#### 5、将文件复制到容器外 ``` docker cp openjdk1.8:/usr/local/1.txt ./ ``` -#### 将文件复制回容器 +#### 6、将文件复制回容器 ``` docker cp ./1.txt openjdk1.8:/usr/local/ @@ -213,7 +169,7 @@ docker cp ./1.txt openjdk1.8:/usr/local/ ### 四、使用$Dockerfile$创建镜像 -> dockerfile 内容如下: +> $dockerfile$ 内容如下: ``` # 指定了使用openjdk:8u332-jre-slim-bullseye镜像作为基础镜像,并且给这个镜像起了一个别名runner @@ -244,8 +200,8 @@ ENV JAVA_OPTS="-server -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimi #配置文件中的spring.profiles.active:在application.properties或bootstrap.properties(以及对应的YAML格式)中设置的spring.profiles.active具有较低的优先级。 #在您提供的情况中,通过ENV指令设置的环境变量ENV_OPTS包含了-Dspring.profiles.active=test,这意味着在启动Java应用程序时,将通过命令行参数指定test配置文件为激活配置。因此,即使bootstrap.yml文件中设置了profiles: active: dev,应用程序最终将使用test配置文件,因为命令行参数的优先级高于配置文件中的设置。 #所以,最终JAR包执行时,将使用test配置文件。 -#ENV ENV_OPTS="-Dspring.profiles.active=test" -ENV ENV_OPTS="-Dspring.profiles.active=pro" +ENV ENV_OPTS="-Dspring.profiles.active=dev" +#ENV ENV_OPTS="-Dspring.profiles.active=pro" # sh -c:这告诉Docker容器使用sh(Shell)来执行后面的命令字符串。-c参数表示后面跟着的是要执行的命令。 #java $JAVA_OPTS $ENV_OPTS ...:这是要执行的Java命令,其中$JAVA_OPTS和$ENV_OPTS是之前通过ENV指令设置的环境变量,它们将在运行时被替换为它们各自的值。 @@ -255,7 +211,7 @@ ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS $ENV_OPTS -Djava.security.egd=file:/ ``` - +#### 创建容器 ``` mkdir /usr/local/publish @@ -266,15 +222,13 @@ rz -be ``` - - 将$Java$的微服务项目打包: ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070818789.png) ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070818135.png) - +#### 继续打包 ``` cd /usr/local/publish @@ -318,7 +272,7 @@ docker run -d -p 7001:7001 gw-charge docker ps ``` -![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070827585.png) +![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070848284.png) #### 查看$Docker$日志 @@ -326,6 +280,6 @@ docker ps docker logs c128a94e5884 ``` -发现是将发布的版本设置为Pro导致与实际环境不符,修改回$Dev$,重新生成镜像尝试: + ![](https://dsideal.obs.cn-north-1.myhuaweicloud.com/HuangHai/BlogImages/202408070839957.png)