docker-compose.yml 使用 deploy 对资源进行配置

version: "3"

services:

  java8:

    container_name: sc-server

    restart: always

    image: java:8

    deploy:

      resources:

        limits:

          memory: 700m
          cpus: '0.50'

    volumes:

      - ./sc.jar:/sc.jar

      - ./logs:/data/logs

      - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime

    ports:

      - "8082:8080"

    environment:

      - TZ=Asia/Shanghai

    entrypoint: java -server -Dfile.encoding=utf-8 -Xms512m -Xms512m -jar -Dserver.port=8080  -Dspring.profiles.active=prod sc.jar

启动容器

docker-compose --compatibility up -d

说明:由于做了资源限制, 并且没有使用swarm, 所以要加上--compatibility参数, 不然会报错

查看资源

docker stats

说明:如果容器资源限制后,无法正常访问,有可能是服务启动的资源不够导致的。我们可以通过 docker stats 查看容器使用资源的百分比,这样可以判断限制的资源是否合理。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐