在大多数时候,我们需要将java应用放到都容器中运行,这时候就需要自己构建一个docker镜像,并用docker-compose对容器进行管理。本次以ubuntu操作系统为例进行镜像构建,Dockerfile内容如下:
FROM ubuntu:22.04
MAINTAINER Witer Liu
RUN apt update -y && \
apt install -y language-pack-zh-hans openjdk-8-jdk tzdata && \
apt clean && \
rm -rf /var/lib/apt/lists/*
ENV TZ=Asia/Shanghai \
LC_ALL=zh_CN.UTF-8
RUN echo "${TZ}" > /etc/timezone
执行以下命令进行镜像打包:
docker build . -t ubuntu_22.04:jdk1.8
应用容器编排:
cd /data/app/appname
touch docker-compose.yaml
docker-compose.yaml内容大致如下:
version: "3"
services:
appname:
image: ubuntu_22.04:jdk1.8
container_name: appname
ports:
- 8088:8088
volumes:
- /data/app/appname/:/data/app/appname
environment:
- TZ=Asia/Shanghai
working_dir: /data/app/appname
command: /bin/bash -c "java -jar appname.jar"
ulimits:
nproc: 65535
nofile: 65535
restart: always
logging:
driver: json-file
options:
max-size: "50m"
max-file: "50"
启动容器:
cd /data/app/appname
docker-compose up -d