上一篇:Docker学习1《环境准备、原理、常用命令》
目录
- 一、安装nginx镜像
- 1、获取nginx的版本
- 2、下载nginx
- 3、运行nginx
- 4、开放端口
- 5、测试
- 6、端口暴露的概念
- 二、安装tomcat镜像
- 1、下载tomcat
- 2、启动运行
- 3、进如tomcat容器
- 三、安装centos7镜像并在里面安装jdk和tomcat
- 1、下载centos镜像
- 2、启动镜像
- 3、进入容器并配置ssh服务
- 4、基础配置
- 5、docker的centos镜像里面安装JDK8
- 6、设置环境变量
- 7、安装tomcat
- 8、设置环境变量
- 四、镜像导出导入
- 1、导出镜像
- 2、导入镜像
- 五、容器导入导出
- 1、导出容器
- 2、导入容器
- 六、上传到仓库
- 1、注册账号:
- 2、登录(输入账号和密码)
- 3、将容器转换为镜像
- 4、上传镜像到默认仓库
- 5、下载
- 七、上传到阿里云
- 1、创建命名空间
- 2、创建镜像仓库
- 3、命令
- 1. 登录阿里云Docker Registry
- 2、从Registry中拉取镜像
- 3、将镜像推送到Registry
- 4、示例
一、安装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、注册账号:
并设置邮箱:
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《环境准备、原理、常用命令》