阅读量:6
有时候,在生产环境下,没有外网,无法下载docker镜像。
这时,可在有外网的机器上,下载好docker镜像,然后,把docker镜像保存为文件,再到生产环境的机器上,加载docker镜像。
比如:
# 使用Java官方镜像作为基础镜像 FROM openjdk:17-jdk-slim # 设置容器内的工作目录 WORKDIR /app # 将编译好的jar包复制到容器中 COPY helloworld-0.0.1-SNAPSHOT.jar /app/app.jar # 配置环境变量,例如设置时区等 #ENV TZ=Asia/Shanghai # 端口映射,Spring Boot应用通常监听8080端口 EXPOSE 8080 # 容器启动时执行的命令,运行Spring Boot应用 CMD ["java", "-jar", "app.jar"]
这个Dockfile脚本中FROM openjdk:17-jdk-slim这行,因为没有网络,openjdk无法拉取。
这时,可按下面的步骤操作。
1.从有外网的机器上,拉取docker镜像。
docker pull openjdk:17-jdk-slim
2.保存成tar文件。
docker save -o openjdk.tar openjdk:17-jdk-slim
3.把tar文件,复制到生产环境中,加载docker镜像
docker load < openjdk.tar
4.编译Dockfile文件
dockebuild -t spring-boot-helloword .
这时,生产环境已有openjdk镜像,不会从网络上拉取。Dockfile脚本编译成功。