在大多数时候,我们需要将java应用放到都容器中运行,这时候就需要自己构建一个docker镜像,并用docker-compose对容器进行管理。本次以ubuntu操作系统为例进行镜像构建,Dockerfile内容如下:
FROM ubuntu:22.10
MAINTAINER Witer Liu
ADD jdk-8u371-linux-x64.tar.gz /usr/local/
RUN apt update -y && \
apt upgrade -y && \
apt install -y language-pack-zh-hans && \
apt clean
ENV JAVA_HOME=/usr/local/jdk1.8.0_371 \
LC_ALL=zh_CN.UTF-8
ENV PATH=$JAVA_HOME/bin:$PATH
执行以下命令进行镜像打包:
dcoker build . -t ubuntu_22.10:jdk1.8
应用容器编排:
cd /data/app/appname
touch docker-compose.yaml
docker-compose.yaml内容大致如下:
version: "3"
services:
appname:
image: ubuntu_22.10: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