Docker操作复现(WoniuSales环境搭建)
1.镜像:Docker相关站点事先制作好的带有操作系统或应用程序的一个文件包,下载回来后便剋启动Docker运行环境,类似vmware中一个预先安装好的虚拟机文件,自己也可以在自己私有环境中制作镜像,供别人使用。通常的两个用于下载镜像的站点:https://hub.daocloud.io/
(国内镜像,推荐),https://hub.docker.com/)
(速度极慢,不推荐)
2.容器:镜像的具体可启动的实例,容器要有唯一名称以便区分(编号前四位也可区分),如果要外部访问,需要映射端口,如此次安装的映射3306端口到宿主机上的3307端口上。如果要共享文件夹,还需要做映射文件夹…
Docker的安装
docker要求centos系统的内核版本必须高于3.10
uname -r 查看当前内核版本
uname -a 显示系统信息
安装相关依赖
yum install -y net-tools
yum install -y yum-utils device-mapper-persistent-data lvm2
设置相关的yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
更新yum缓存
yum makecache fast
安装docker社区版
yum -y install docker-ce
docker服务的启动停止自启动
systemctl start/stop/restart/status/enable docker
验证
docker version
配置镜像加速器
https://cr.console.aliyun.com/
配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://k402frys.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
拉取镜像
docker pull centos:centos7.9.2009
# docker images #查看镜像
# docker rmi (image) #删除镜像
docker中安装配置woniusales
1.使用特权模式创建容器:docker create -ti --name centos7.9 -h mycentos7 --privileged=true -p 3307:3306 -p 8081:8080 centos:centos7.9.2009 /sbin/init
2.启动容器:docker start centos7.9
3.将mysql5.6的rpm源复制到容器中:docker cp ./mysql57-community-release-el7-10.noarch.rpm centos7.9:/opt
4.进入容器:docker exec -it centos7.9 /bin/bash
5.在容器的命令提示符下安装MySQL:
安装源:rpm -ivh mysql57-community-release-el7-10.noarch.rpm
编辑源:vi /etc/yum.repos.d/mysql-community.repo #将5.6版本的enable设置为1
清空缓存:yum clean all
安装MySQL:systemctl status mysqld
启动MySQL服务:systemctl status mysqld
6.特权模式下启动mysqld后登陆mysql
mysql -u root
7.授权远程登陆用户
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
flush privileges;
9.远程利用navicate登陆,创建woniusales数据库,运行woniusales.sql生成数据
10.复制jdk,tomcat,woniusales.war文件到容器中,解压jdk
docker cp ./apache-tomcat-8.0.47.tar.gz centos7.9:/opt
docker cp ./jdk-8u211-linux-x64.tar.gz centos7.9:/opt
docker cp woniusales.war centos7.9:/opt
docker exec -it centos7.9 /bin/bash
tar -zxf apache-tomcat-8.0.47.tar.gz
ls
cp woniusales.war /opt/apache-tomcat-8.0.47/webapps/woniusales.war
/opt/apache-tomcat-8.0.47/bin/startup.sh
所以Tomcat启动成功
访问http://192.168.234.188:8081/成功
http://192.168.234.188:8081/woniusales/成功
11.并vi /etc/rc.d/rc.local 文件配置环境变量(直接设置开机自启动):
export JAVA_HOME="/opt/jdk1.8.0_211"
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export PATH
/opt/apache-tomcat-8.0.47/bin/startup.sh
因为没有人驱动它,所以授予它可执行的权限
chmod u+x /etc/rc.d/rc.local
exit退出容器
docker stop centos7.9发现网页访问不了了
docker start centos7.9发现网页又行了,自启动实现了
/etc/rc.d/rc.local:系统在启动时进行加载执行
12.将容器提交为镜像
docker commit -a "Author" -m "Description" centos7.9 woniusales:1.4
gzip woniusales-centos7.9.tar
docker commit -a “dragon” -m “woniusale with centos7.9” centos7.9 woniusales:1.4
13.将镜像进行归档压缩
docker save -o /opt/woniusales-centos7.9.tar woniusales:1.4
docker save -o /woniusales-centos7.9.tar woniusales:1.4
gzip woniusales-centos7.9.tar
du -sh woniusales-centos7.9.tar.gz
14.从归档或压缩文件还原镜像
docker load -i woniusales-centos7.9.tar.gz
docker images
docker rmi woniusales:1.4 #删除镜像docker load -i woniusales-centos7.9.tar.gz #还原镜像
15.创建并启动容器,实现WoniuSales的访问
docker create -ti --name centos7.9 -h mycentos7 --privileged=true -p 3307:3306 -p 8081:8080 centos:contos7.9.2009 /sbin/init
docker create -ti --name woniusales -h woniusales --privileged=true -p 3308:3306 -p 8082:8080 woniusales:1.4 /sbin/init
docker start woniusales
docker exec -it woniusales /bin/bash