若容器存在请先停止,在删除,然后删除镜像重新编译
//停止容器 sudo docker stop datatransfer //删除容器 sudo docker rm datatransfer //删除镜像 sudo docker rmi hrtransfer
复制java项目工程文件jar包到 /apps/demo.jar
在 /apps/ 目录创建 Dockerfile文件,输入以下内容
FROM openjdk:8 #作者 MAINTAINER songchuanfu #将 与Dockerfile文件同目录的demo.jar文件复制到镜像中(Linux操作系统的根目录)名称为 app.jar ADD demo_docker-0.0.1-SNAPSHOT.jar app.jar #让 运行镜像的容器 去监听9000端口 EXPOSE 8085 #同步docker的时区 #RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime RUN echo 'Asia/Shanghai' >/etc/timezone #镜像启动时运行 java -jar /app.jar命令 ENTRYPOINT ["java","-jar","/app.jar"]
docker自动更新脚本
新建updateDocker.sh写入以下内容
echo "welcome to use docker reBuild" echo "停止容器" sudo docker stop yilianserver_instance echo "删除容器" sudo docker rm yilianserver_instance echo "删除镜像" sudo docker rmi yilianserver echo "打包docker" sudo docker build -t yilianserver . echo "运行docker" sudo docker run -d -it --name yilianserver_instance -p 8085:8085 yilianserver echo "运行docker" sudo docker start yilianserver_instance
打包docker docker build -t hrtransfer . 运动docker并开启两个端口 docker run -d -it --name datatransfer -p 9000:9000 -p 9001:9001 hrtransfer //运行docker docker start datatransfer //查看日志 docker logs datatransfer //实时查看docker容器日志 docker logs -f -t --tail 222 datatransfer 查看docker文件 sudo docker exec -it datatransfer ls -l / 容器里面拷文件到宿主机 sudo docker cp datatransfer:/logs /home/hadoop/Log 宿主机拷文件到容器里面 docker cp /opt/test.js datatransfer:/usr/local/tomcat/webapps/test/js //显示容器使用的内存、cpu资源 docker stats //显示容器使用的系统资源 docker system df -v //修改docker时间 //查看每个容器占用的磁盘空间呢 docker system df -v
修改Docker容器的时间和宿主时间一致
1、首先进入到容器中: docker exec -it datatransfer /bin/bash 2、在容器中修改下/etc/localtime文件的名称,避免冲突。 cd /etc/ mv /etc/localtime /etc/localtime_bak cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime date
查看高能耗进程
精简镜像的doker先安装相关工具