Docket学习2《docker安装nginx、安装tomcat、安装Centos7、容器导入导出、镜像上传到仓库》

上一篇:Docker学习1《环境准备、原理、常用命令》

一、安装nginx镜像

1、获取nginx的版本

官网:https://hub.docker.com/search?q=nginx&type=image
在这里插入图片描述
进去后往下拉,就能看到:
在这里插入图片描述

2、下载nginx

docker pull nginx

在这里插入图片描述
查看是否下载安装成功

docker images

在这里插入图片描述

3、运行nginx

docker run -d --name nginx01 -p 3344:80 nginx

在这里插入图片描述

4、开放端口

检查防火墙状态

firewall-cmd --state

running 表示防火墙是开启的,如果你看到的是 not running,防火墙关闭,需要开启 systemctl start firewalld.service

开放 3344 端口

firewall-cmd --zone=public --add-port=3344/tcp --permanent

重启防火墙

systemctl restart firewalld.service

重新载入配置

firewall-cmd --reload

注意:如果是阿里云服务器,还有开放安全组

5、测试

curl localhost:3344

6、端口暴露的概念

在这里插入图片描述

二、安装tomcat镜像

1、下载tomcat

docker pull tomcat:9.0

在这里插入图片描述
在这里插入图片描述

2、启动运行

docker run --privileged -itd --name tomcat01 -p 8085:8080 tomcat

3、进如tomcat容器

docker exec -it tomcat01 /bin/bash

# 拷贝
cp -r webapps.dist/* webspps

三、安装centos7镜像并在里面安装jdk和tomcat

1、下载centos镜像

docker pull centos:7

在这里插入图片描述

2、启动镜像

如果不指定 /bin/bash,容器运行后会自动停止

启动镜像:

docker run --privileged  -itd -p 2222:22 -p 8085:8080 -p 9200:9200 -p 5601:5601 --name centos7_server_2 centos:7 /usr/sbin/init

参数说明:

--privileged         # 启动后让docker容器具备超级特权。
-itd                 # 交互式、终端、后台运行
--restart=always     # 开机自启动容器
-p                   # 把宿主机的2222端口映射到docker的22端口。
--name               # 给启动的容器命名,方便后续操作
9f38484d220f         # 就是IMAGE ID

※ 宿主机就是运行docker的机器,这样访问宿主机IP:2222端口,实际访问的是docker的22端口。

3、进入容器并配置ssh服务

进入容器

docker exec -it centos7_server /bin/bash

在这里插入图片描述
----------------------一下都是在容器内部操作--------------------------

#安装openssh
yum install -y openssh-server openssh-clients

#启动openssh
systemctl start sshd

#设置root密码
passwd 
bash: passwd: command not found

#安装passwd 
yum install passwd \

# 再次设置密码
passwd
。。。。1次密码
。。。。2次确认

#退出容器
exit

4、基础配置

先进入centos容器:

docker exec -it centos7_server /bin/bash

1)ifconfig (网络\IP),安装netstat:

yum install net-tools

2)unzip zip(压缩\解压缩) :

yum install -y unzip zip

3)rz (文件上传) :

yum -y install lrzsz

4)安装wget:

yum -y install wget

5)firewall-cmd:

yum install firewalld systemd -y

6)安装更新系统时间:

yum install ntpdate

7)安装tree:

yum -y install tree

8)安装vim:

yum -y install vim

9)退出:

exit

10)测试:

ssh root@localhost -p 2222

5、docker的centos镜像里面安装JDK8

在docker的centos镜像里面运行:

创建目录并进入:

mkdir /usr/local/java/

cd /usr/local/java/

下载jdk8:

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"

解压:

tar -zxvf jdk-8u141-linux-x64.tar.gz

6、设置环境变量

vim /etc/profile

在末尾添加:

export JAVA_HOME=/usr/local/java/jdk1.8.0_141
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

在这里插入图片描述
使环境变量生效

source /etc/profile

添加软链接

ln -s /usr/local/java/jdk1.8.0_141/bin/java /usr/bin/java

检查

java -version

在这里插入图片描述

7、安装tomcat

创建目录:

mkdir tomcat

在这里插入图片描述
进入tomcat目录 :

cd tomcat

下载tomcat

tomcat官网:https://tomcat.apache.org/download-90.cgi

wget https://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.39/bin/apache-tomcat-9.0.39.tar.gz

在这里插入图片描述
解压

tar -zxvf apache-tomcat-9.0.39.tar.gz

8、设置环境变量

vim /etc/profile

在末尾添加

export TOMCAT_HOME=/usr/local/tomcat/apache-tomcat-9.0.39
export CATALINA_HOME=/usr/local/tomcat/apache-tomcat-9.0.39
export PATH=${TOMCAT_HOME}/bin:$PATH

在这里插入图片描述
使环境变量生效

source /etc/profile 

ptable转发端口(将docker容器的8080端口映射到宿主机的8085端口):

iptables -t nat -A  DOCKER -p tcp --dport 8085 -j DNAT --to-destination 172.17.0.1:8080

四、镜像导出导入

1、导出镜像

docker save 镜像ID > test.tar  test:6.4.2 /usr/local/docker/

2、导入镜像

docker load < test.tar

五、容器导入导出

1、导出容器

docker export 容器id > my_centos7.jar

2、导入容器

docker import my_centos7.jar centos:7

刷新环境(导入或重新进入容器后,环境变量需要刷新才能使用)

source /etc/profile

六、上传到仓库

1、注册账号:

https://hub.docker.com

并设置邮箱:

在这里插入图片描述

2、登录(输入账号和密码)

docker login

3、将容器转换为镜像

格式:
docker commit 容器名称  账号名/镜像名: tag
例如:
docker commit centos7_server_2 xdragon6/java_tomcat_es:1

4、上传镜像到默认仓库

docker push xdragon6/java_tomcat_es:1

5、下载

登录(输入账号和密码)

docker login

下载

docker pull xdragon6/java_tomcat_es:1

七、上传到阿里云

1、创建命名空间

在这里插入图片描述

2、创建镜像仓库

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3、命令

1. 登录阿里云Docker Registry

docker login --username=xdragon000 registry.cn-shenzhen.aliyuncs.com

2、从Registry中拉取镜像

docker pull registry.cn-shenzhen.aliyuncs.com/xdragon/java_tomcat:[镜像版本号]

3、将镜像推送到Registry

docker login --username=xdragon000 registry.cn-shenzhen.aliyuncs.com

docker tag 25286417b08d registry.cn-shenzhen.aliyuncs.com/xdragon/java_tomcat:1.2

docker push registry.cn-shenzhen.aliyuncs.com/xdragon/java_tomcat:1.2

4、示例

使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。

docker tag 37bb9c63c8b2 registry-vpc.cn-shenzhen.aliyuncs.com/acs/agent:0.7-dfb6816

使用 “docker push” 命令将该镜像推送至远程。

docker push registry-vpc.cn-shenzhen.aliyuncs.com/acs/agent:0.7-dfb6816

上一篇:Docker学习1《环境准备、原理、常用命令》

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值