下载地址:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html
解压文件
tar -zxvf jdk-8u202-linux-x64.tar.gz
yum install -y wget unzip wget https://product-dist.wso2.com/products/enterprise-service-bus/5.0.0/wso2esb-5.0.0.zip unzip wso2esb-5.0.0.zip
vim wso2esb_dockerfile
# 设置docker的运行环境 FROM centos:7 # 编写人 MAINTAINER wxhntmy RUN yum -y install wget vim net-tools glibc.i686 RUN mkdir -p /usr/local/java # 将宿主机的文件拷贝到容器的具体目录中。 ADD jdk1.8.0_202 /usr/local/java/jdk1.8.0_202 # 配置jdk环境 ENV JAVA_HOME /usr/local/java/jdk1.8.0_202 ENV JRE_HOME $JAVA_HOME/jre ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH ENV PATH $JAVA_HOME/bin:$PATH RUN mkdir -p /app # 将宿主机的文件拷贝到容器的具体目录中。 ADD wso2esb-5.0.0 /app/wso2esb-5.0.0 WORKDIR /app/wso2esb-5.0.0 # 非root用户启动 RUN groupadd -g 100120 wso2esb RUN useradd -u 200211 -g wso2esb -d /home/wso2esb -m wso2esb RUN chown -R wso2esb:wso2esb /app/wso2esb-5.0.0/ RUN chmod 755 /app/wso2esb-5.0.0/ -R WORKDIR /usr/local EXPOSE 80 EXPOSE 9763 EXPOSE 9443 EXPOSE 8280 EXPOSE 8243 USER wso2esb CMD ["/bin/bash", "-c", "/app/wso2esb-5.0.0/bin/wso2server.sh"]
构建镜像
docker build -f wso2esb_dockerfile -t wso2esb:5.0.0 .
启动一个镜像
docker run -d --name wso2 -p 8443:9443 wso2esb:5.0.0
创建挂载目录
mkdir -p /data/wso2esb-5.0.0/{tmp,repository} docker cp wso2:/app/wso2esb-5.0.0/repository /data/wso2esb-5.0.0 docker cp wso2:/app/wso2esb-5.0.0/tmp /data/wso2esb-5.0.0 docker stop wso2 docker rm -f wso2
docker run -d --name wso2 -p 8443:9443 -p 8763:9763 -p 7280:8280 -p 7243:8243 \ -v /data/wso2esb-5.0.0/repository:/app/wso2esb-5.0.0/repository \ -v /data/wso2esb-5.0.0/tmp:/app/wso2esb-5.0.0/tmp \ wso2esb:5.0.0
docker ps -a docker logs -f wso2 docker exec -it wso2 /bin/bash docker stop wso2 docker rm -f wso2