Docker运行jar包
Docker运行jar包
前置条件
centos安装docker成功,运行docker version无报错
1. docker 配置国内镜像:
修改 /etc/docker/daemon.json文件,如果没有就自己创建,写入以下内容
{
"registry-mirrors":[
"https://ustc-edu-cn.mirror.aliyuncs.com",
"http://hub-mirror.c.163.com",
"https://registry.aliyuncs.com"
]
}
配置阿里云镜像后重启服务
systemctl daemon-reload
systemctl restart docker
2.在/root路径下新建dockerfile内容如下:
FROM openjdk:11
EXPOSE 8080
WORKDIR /root
ADD jarfile/cicd*.jar /root.app.jar
ENTRYPOINT ["java","jar","/root/app.jar"]
亲测有效:
FROM openjdk:11
MAINTAINER jeff
VOLUME /root
EXPOSE 8080
ADD cicdtest-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
ADD
cicdtest-0.0.1-SNAPSHOT.jar app.jar
这句会把app.jar
放在docker image的根目录下,
ENTRYPOINT ["java","-jar","~/app.jar"]
这句会去用户home目录下去找, 所以找不到。
改成 ENTRYPOINT ["java","-jar","/app.jar"]
3.把java项目jar包打包成镜像
注意:当前目录要有dockerfile这个文件,需要等待的时间比较长
docker build -t demo .
docker build -f dockerfile -t demo1 .
注意 cicdtest-0.0.1-SNAPSHOT.jar 在/root/jarfile 路径下
4.查看镜像
docker images
jar已经成功打包成镜像,并且获取openjdk成功
5.运行镜像
docker run -d --name demo -p 8080:8080 demo
--name demo 命名为demo
-p 8080:8080 断开映射
最后的demo表示镜像的名称
查看运行的容器
docker ps
如果docker ps没有看到任何容器,说明容器启动失败
查看容器名称为demo的log的最后500行
docker logs -f --tail=500 demo
容器运行成功,在浏览器输入网址,可以看到返回页面
查看所有的容器
docker ps -a
停止容器
dokcer stop 容器id
6.强制删除镜像
docker rmi -f 镜像名称
7. 删除容器
docker ps -a 查看所有容器
docker rm 容器id
8.其他
docker 镜像官网
hub.docker.com
重新加载daemon 重启docker 服务具体命令如下:
systemctl daemon-reload
restart docker.service
service docker restart
让 Docker 容器在后台以守护态(Daemonized)形式运行,可以通过添加 -d 参数来实现。
[root@VM-0-5-centos ~]# docker run -itd centos:latest /bin/bash
查看端口占用
netstat -tanlp
更多推荐
所有评论(0)