容器安装java_Docker环境安装部署Java应用(含安装Tomcat和JDK)

1.部署思路

两台docker机(centos 7系统),Docker 版本:18.09.6, build 481bc77156

Docker host IP:192.168.102.135

Docker client IP:192.168.102.134

在centos host上部署dokcer,并在docker容器中部署tomcat及jdk、webapp,部署后测试通过,并推入私有仓库。docker client端从私有仓库拉取镜像,运行并查看运行结果。操作示意图如下:

86b57ff90570bedc8dae165fed28253e.png

2.安装tomcat

docker pull tomcat

docker run -p 8080:8080 --name mytomcat tomcat:latest # 提取镜像,生成容器,并命名容器为:mytomcat

3.安装jdk

在Oracle 官网下载jdk,通过工具上传到centos 7中,然后拷贝到容器中,命令如下:

docker cp *****.gz mytomcat:/root

拷贝成功后,使用如下命令,进入容器mytomcat:

docker exec -it mytomcat bash

然后用cd ~切换到到root目录下,然后新建目录:/usr/local/java,并将jdk拷贝到此目录下,使用tar命令解压,解压完成后,配置系统路径:

vi ~/.bashrc

如果此时提示vi命令找不到,则需要运行以下命令,安装vi.

apt-getupdate#安装vi

apt-get install vim

有了此软件后,打开.bashrc文件,并在其中添加如下两行:

export JAVA_HOME=/usr/local/java/jdk1.8.0_211

export PATH=$JAVA_HOME/bin:$PATH

刷新配置:source ~/.bashrc,并用java -version测试是否安装成功。

3.部署web应用

上传war包,并传入mytomcat容器中。注意,拷贝命令是:docker cp ibweb.war 97430ad8c4ba:/usr/local/tomcat/webapps,而非:docker cp ibweb.war 97430ad8c4ba:/webapps

然后使用命令重启容器,以测试war包发布

docker restart mytomcat

或者命令:

docker stop mytomcat

docker start mytomcat

测试通过后,将此容器建立镜像,所需命令为:

docker commit -a 'clyan' -m 'this is the first version'3d9cdd799aef mytomcat:v1

#docker commit-m “提交说明文字” -a “作者” 要提交的容器名 提交后的镜像名:提交后的镜像tag名

注意,本命令既可以使用容器id,又可以使用容器名称。

打包成功后,需要打标签(此时如果不打标签为如下格式,则会出错)

docker tag e6d190ad3797 192.168.102.135:5000/mytomcat

tag语法:[容器ID|容器名称][仓库][标签]

完成后,推入私有库(此时要确保私有库已经运行)

docker push 192.168.102.135:5000/mytomcat

推入成功后,客户端从私有库中拉取镜像,并转为容器,并运行:

docker pull 192.168.102.135:5000/mytomcat

docker run -p 8080:8080 --name mytomcat 192.168.102.135:5000/mytomcat:v1

4.注意事项:

使用命令拉取私有仓库镜像,并安装:

docker pull registry

docker run-d -p 5000:5000 -v /opt/data/registry:/var/lib/registry --name private_registry registry

Docker中配置私有仓库需要在:/etc/docker目录下建立文件daemon.json,内容如下:

{"registry-mirrors": ["https://registry.docker-cn.com"],"insecure-registries": ["192.168.102.135:5000"]

}

或者根据systemctl status docker来确定docker文件,打开后在ExecStart行添加内容:

a64ed9aac19b1e8594aa8acf93607f10.png

ExecStart=/usr/bin/dockerd -H fd://--containerd=/run/containerd/containerd.sock --insecure-registry=192.168.221.129:5000

systemctl daemon-reload

systemctl restart docker

64d6533b02ea6ebc2032f62e797118d1.png

常用命令:

docker ps -n 5#查看容器

docker ps#查看运行容器

docker rm #删除容器

docker rmi #删除镜像

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值