新部署的虚拟机,安装前准备:
关闭防火墙
[root@localhost /]# systemctl stop firewalld.service
设置开机不启动防火墙
[root@localhost /]# systemctl disable firewalld.service
临时关闭selinux
[root@localhost /]# setenforce 0
永久关闭selinux
[root@localhost /]# vim /etc/selinux/config
改成SELINUX=disabled
然后:WQ
安装Docker服务
在线安装Docker服务
[root@localhost /]# yum -y install docker
Docker Root Dir: /var/lib/docker
启动docker服务
[root@localhost /]# systemctl start docker.service
查看docker服务状态
[root@localhost /]# systemctl status docker.service
设置docker开机启动
[root@localhost /]# systemctl enable docker.service
修改下载地址
[root@localhost /]# cd etc/docker
[root@localhost docker]# ll
总用量 20
drwxr-xr-x. 5 root root 75 4月 22 01:01 certs.d
-rw-r--r--. 1 root root 3 3月 2 23:20 daemon.json
-rw-------. 1 root root 244 4月 22 01:01 key.json
-rw-r--r--. 1 root root 10850 3月 2 23:20 seccomp.json
[root@localhost docker]# cat daemon.json
{
"registry-mirrors": ["https://t5t8q6wn.mirror.aliyuncs.com"]
}
[root@localhost docker]#
重启
[root@localhost docker]# systemctl daemon-reload
[root@localhost docker]# systemctl restart docker.service
通过Docker部署Tomcat
docker服务搜索tomcat镜像
[root@localhost /]# docker search tomcat
拉取tomcat镜像
[root@localhost /]# docker pull docker.io/tomcat:9
查看tomcat镜像
[root@localhost /]# docker images tomcat
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/tomcat 9 402713d372bf 2 weeks ago 680 MB
[root@localhost /]#
创建tomcat守护式容器
如果启动出现报错什么的,可以重启network和docker服务
[root@localhost /]# docker run -di -p 80:8080 --name=tomcat001 docker.io/tomcat:9
查看tomcat容器状态
[root@localhost /]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b189273ab331 docker.io/tomcat:9 "catalina.sh run" 30 seconds ago Up 28 seconds 8080/tcp, 0.0.0.0:80->8000/tcp tomcat001
[root@localhost /]#
通过Docker部署MySQL
搜索mysql镜像
[root@localhost /]# docker search mysql
拉取mysql镜像
[root@localhost /]# docker pull docker.io/mysql:5.7
查看mysql镜像
[root@localhost /]# docker images mysql
REPOSITORY TAG IMAGE ID CREATED SIZE
[root@localhost /]#
通过docker服务创建mysql守护式容器
[root@localhost /]# docker run -di --name=mysql001 -p 33506:3306 -e MYSQL_ROOT_PASSWORD=123456 docker.io/mysql:5.7
查看mysql容器状态
[root@localhost /]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f232a7231756 docker.io/mysql:5.7 "docker-entrypoint..." 43 seconds ago Up 42 seconds 33060/tcp, 0.0.0.0:33506->3306/tcp mysql1001
b189273ab331 docker.io/tomcat:9 "catalina.sh run" 10 minutes ago Up 10 minutes 8080/tcp, 0.0.0.0:80->8000/tcp tomcat001
[root@localhost /]#
进入mysql容器
[root@localhost /]# docker exec -it f232a7231756 bash
root@f232a7231756:/# mysql -uroot -p'123456'
创建数据库
mysql> create database zrlog;
Query OK, 1 row affected (0.00 sec)
mysql>
授权一个新的远程访问root用户,以后可以使用navicat连接数据库
mysql> grant all privileges on *.* to root@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
刷新权限
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
退出
mysql> exit
Bye
root@f232a7231756:/# exit
exit
[root@localhost /]#
全部部署完毕
后续会用到的命令
查看所有的容器
docker ps -a
根据容器对应的 id 操作容器
docker start 容器id
进入容器
docker exec -it 容器id /bin/bash
ls 查看所有目录 进入操作即可
下面部署一个学习的项目
把war包复制到tomcat
[root@localhost ~]# docker cp ROOT.war 8484dd0c4ca0:/usr/local/tomcat/webapps
然后访问项目
http://192.168.70.129/install