1、本地项目 install 相应的 jar 包到 target 目录下,jar 包的路径步骤 2 要填写
2、项目根目录下创建 Dockerfile 文件
# 使用官方的 Java 11 镜像作为基础镜像
FROM openjdk:11-jdk
# 设置工作目录
WORKDIR /app
# 复制应用程序 JAR 文件到镜像中的 /app 目录下
COPY authing-apisix-soa/target/authing-apisix-soa.jar /app/authing-apisix-soa.jar
# 运行应用程序
CMD ["java", "-jar", "/app/authing-apisix-soa.jar"]
3、在项目跟目录执行 docker build -t gateway .
权限的 warning 不用理会
3、由于项目带有本地 redis,所以需要首先需要创建容器间共享网络(redis 容器和 java 项目容器共享网络),其次 docker 启动 redis 容器(端口映射),再次 java 项目中配置的 redis 链接需要使用宿主机的 ip 地址,命令如下
# (1)查看容器间共享网络
docker network ls
# (2)创建容器间共享网络 gateway-network
docker run -d -p 6379:6379 --name redis --network gateway-network redis:latest
# (3)启动 redis,端口映射 6379, 容器间共享网络 gateway-network
docker run -d -p 6379:6379 --name redis --network gateway-network redis:latest
# (4)查看宿主机的 ip,项目中配置文件 redis 链接需要使用宿主机的 ip
docker network inspect bridge
4、启动 java 项目
# 启动 java 项目,端口映射项目启动 8090 映射到 8099 对外访问, 容器间共享网络 gateway-network
docker run -p 8099:8090 --name gateway --network gateway-network gateway