Dockerfile镜像构建及常用命令总结
# 基础镜像
FROM FROM moxm/java:1.8
# 作者信息
MAINTAINER yzd<17882555101@163.com>
# 创建目录
RUN mkdir -p /gateway
# 设置工作目录
WORKDIR /gateway
# 变量定义
ARG JAR_FILE=target/gateway.jar
# 拷贝jar包
COPY ${JAR_FILE} app.jar
# 设置时区为上海
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
# 挂载目录 运行时 该目录不进入容器 ; 运行时使用 docker run -v mydata:/data 。。。
VOLUME ["/gateway/logs"]
# 设置编码
ENV LANG C.UTF-8
# 暴露端口
EXPOSE 8070
# 设置 环境变量
ENV TZ=Asia/Shanghai JAVA_OPTS="-Xms128m -Xmx256m -Djava.security.egd=file:/dev/./urandom"
# 启动参数 变参 ,启动时 可使用 -c 指定参数
CMD java -jar app.jar $JAVA_OPTS
# 镜像构建时需要运行的命令
# RUN yum -y install vim
# 指定容器运行时要运行的命令,追加命令
# ENTRYPOINT java -jar app.jar $JAVA_OPTS
# 构建命令
# docker build -t test:v1 .
# 根据名字 停止 并 删除
# docker stop `docker ps -aq --filter name=redis`
# docker rm `docker ps -aq --filter name=redis`
# 导出镜像
# docker save redis > redis.tar
# 导入镜像
# docker load < redis.tar
# 启动镜像 前台
#docker run -d -p 6379:6379 --name docker-redis redis
# 启动镜像 后台
#docker run -itd -p 6379:6379 --name docker-redis redis
# 查看镜像日志
#docker logs docker-redis
# 指定 容器 执行命令 -c 命令参数 分号分隔
#docker exec docker-redis /bin/sh -c "cd /home;sh start.sh start"