docker - 码头集装箱可以“睡觉”吗?
问题描述
我在 docker 容器内运行服务器。我通过使用docker-compose up -d
which 工作正常来启动它,我可以访问服务器。但是一段时间后,我收到 503 - 服务不可用错误。
然后当我执行任何 docker 命令时docker ps
,或者docker logs
服务器再次完美运行。docker ps
显示容器是几天前创建的,但 Status 显示Up 1 second
. 有什么方法可以让我知道我的 docker 之前处于什么状态?如何docker ps
改变状态?
docker-compose.yaml
version: '3'
services:
postgres:
restart: always
image: postgres:12.1
environment:
POSTGRES_PASSWORD: pass
POSTGRES_USER: user
networks:
- mynetwork
volumes:
- /home/user/data/postgres:/var/lib/postgresql/data
ports:
- 5432:5432
web:
restart: always
build: .
environment:
JPDA_ADDRESS: 8001
JPDA_TRANSPORT: dt_socket
networks:
- mynetwork
depends_on:
- postgres
ports:
- 80:8080
- 8001:8001
volumes:
- /home/user/data/images:/data/images
networks:
mynetwork:
driver: bridge
Dockerfile
FROM maven:3.6.3-jdk-8-slim as java-build-stage
WORKDIR /app/build
COPY . .
RUN mvn clean package -am -DskipTests -Dmaven.javadoc.skip=true -P deployment
# create the image to run the tomcat
FROM tomcat:9.0.30-jdk8-openjdk-slim as myname-build
ADD docker-resources/tomcat-users.xml /usr/local/tomcat/conf/tomcat-users.xml
ADD docker-resources/index.html /usr/local/tomcat/webapps/ROOT/index.jsp
COPY --from=java-build-stage /app/build/deployment/target/myname.war /usr/local/tomcat/webapps/myname.war
CMD ["catalina.sh", "jpda" ,"run"]
解决方案
推荐阅读
- angular - 识别组件发射输出属性
- android - Android Studio 3.4.1,Kotlin“未解决的参考:mutableListOf”
- css - Angular Material mat-icon-button,在 Ionic 中垂直对齐文本
- html - 如何在标题 div 下移动我的视差背景图像
- c# - 提取安全组成员时服务器上没有此类对象
- angular - Angular 使用中的 Merge Map 运算符
- azure - ProcessEventsAsync 中的延迟检查点
- mongodb - 复制处于活动状态时无法删除“本地”数据库
- javascript - 使用 Selenium 和 Node.js 进行自动化测试
- azure - 如何删除数据工厂中的链接服务?