【发布时间】:2021-01-09 10:33:04
【问题描述】:
我是 docker 的新手。我正在制作一个 java sockets 音乐服务器,我有 2 个文件。 Client.java 和 Server.java。两者都在单独的容器中。值得一提的是,我在命令行中运行这两个服务
Docker 文件
FROM java:8
COPY Server.java /
RUN javac Server.java
EXPOSE 25000
ENTRYPOINT ["java"]
CMD ["Server"]
FROM java:8
COPY Client.java /
RUN javac Client.java
EXPOSE 25000
ENTRYPOINT ["java"]
CMD ["Client"]
我还创建了一个网络供这两个人交流。
docker network create client_server_network
我按如下方式运行图像:
docker run --env SERVER_HOST_ENV=server --network-alias server --network client_server_network -it server
docker run --network client_server_network -it clientimage
现在我想用这两个 Dockerfile 和网络创建一个 docker compose 文件。这是我到目前为止所做的:
version:'3'
services:
client:
image: java:8
ports:
-25000:25000
network:
default:
name: client_server_network
server:
image: java:8
ports:
-25000:25000
environment:
-SERVER_HOST_ENV=server
network:
我的问题是如何在两种服务中添加公共网络。我写 docker compose 文件的方式也正确吗?
【问题讨论】:
标签: java docker docker-compose