准备
关闭防火墙,上下文
[root@docker ~]# systemctl disable --now firewalld
[root@docker ~]# setenforce 0
下载应用
[root@k8s-master yum.repos.d]# cat <<EOF > /etc/yum.repos.d/docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com//docker-ce/linux/centos/9/x86_64/stable/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
EOF
yum remove runc -y ### rocky8才需要
yum install -y yum-utils
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install -y docker-ce

添加加速网站
[root@docker ~]# vim /etc/docker/daemon.json
[root@docker ~]# systemctl daemon-reload
[root@docker ~]# systemctl restart docker

创建专用网络
[root@docker ~]# docker network create --driver bridge --subnet 192.168.200.0/24 ipip

部署discuz论坛
下载
下载镜像


配置文件
创建目录
配置 php

编写Dockerfile文件

编写配置文件
(可先做php容器后再写,复制粘贴,再重启)



创建 php镜像
[root@docker php]# docker build -t alpine:php .

生成php容器
[root@docker php]# docker run -itd --name php --network ipip -v /root/discuz/php/conf.d:/etc/php83/php-fpm.d -v /root/discuz/discuz:/var/www/discuz alpine:php

配置nginx
编写Dockerfile文件

启动文件

编写配置文件

创建nginx镜像
[root@docker nginx]# docker build -t alpine:nginx .

生成nginx容器
[root@docker nginx]# docker run -itd -v /root/discuz/nginx/conf.d/:/etc/nginx/http.d/ -v /root/discuz/discuz:/var/www/discuz/ -v /root/discuz/nginx/logs:/var/log/nginx --name=nginx --network ipip -p 80:80 alpine:nginx

查看IP
[root@docker nginx]# docker inspect ac

创建测试文件

正常解析

配置mysql

编写配置文件

创建Dockerfile文件

创建mysql用户文件

创建 mysql镜像

生成mysql容器
[root@docker mysql]# docker run -itd --name=mysql --network ipip -v /root/discuz/mysql/data:/var/lib/mysql -v /root/discuz/mysql/conf.d/mysql.conf:/etc/mysql/conf.d/mysql.conf -v /root/discuz/mysql/init.sql:/docker-entrypoint-initdb.d/init.sql -e MYSQL_ROOT_PASSWORD=123.com mysql:mysql
测试
在访问目录下创建测试文件

正常访问


导入discuz论坛

更改所有者

访问





完成
(加 /upload/ 才能访问)
更改默认访问路径


部署 线上商城
创建存放目录
将线上商城应用放在 shangcheng目录下

下载镜像

生成测试容器
[root@docker tomcat]# docker run -itd --name tomcat --network ipip -v /root/tomcat/shangcheng/:/usr/local/tomcat/webapps/ --restart=always tomcat:8

复制server.xml

将配置文件复制到宿主机中

删除测试容器

移动文件
将线上商城下的 .sql 文件 移动 到 之前mysql挂载的 目录里 ( /root/discuz/mysql/data/ )
[root@docker tomcat]# ls
conf.d logs shangcheng
[root@docker tomcat]# cd shangcheng/
[root@docker shangcheng]# cd biyesheji/
[root@docker biyesheji]# ls
注意事项 biyesheji.sql favicon.ico images.zip js META-INF WEB-INF
assets css images index.jsp lib static
[root@docker biyesheji]# mv biyesheji.sql /root/discuz/mysql/data/
msyql
mysql> create database biyesheji;
Query OK, 1 row affected (0.055 sec)
mysql> create user 'tomcat'@'%' identified by '123.com';
Query OK, 0 rows affected (0.111 sec)
mysql> grant all on biyesheji.* to 'tomcat'@'%';
Query OK, 0 rows affected (0.006 sec)
mysql> exit
Bye

注入数据
bash-5.1# mv /var/lib/mysql/biyesheji.sql ./
bash-5.1# ls
afs boot etc lib64 opt run sys var
bin dev home media proc sbin tmp
biyesheji.sql docker-entrypoint-initdb.d lib mnt root srv usr
bash-5.1# mysql -uroot -p'123.com' biyesheji < ./biyesheji.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
修改商层配置文件
[root@docker tomcat]# cd shangcheng/
[root@docker shangcheng]# cd biyesheji/
[root@docker biyesheji]# ls
注意事项 css images index.jsp lib static
assets favicon.ico images.zip js META-INF WEB-INF
[root@docker biyesheji]# vim index.jsp

[root@docker tomcat]# cd shangcheng/biyesheji/WEB-INF/classes/
[root@docker classes]# vim jdbc.properties

生成tomcat容器
[root@docker tomcat]# rm -rf logs/*
[root@docker tomcat]# docker run -itd --name tomcat --network ipip -p 8080:8080 -v /root/tomcat/shangcheng/:/usr/local/tomcat/webapps/ -v /root/tomcat/conf.d/server.xml:/usr/local/tomcat/conf/server.xml -v /root/tomcat/log/:/usr/local/tomcat/logs/ --restart=always tomcat:8

查看IP
[root@docker classes]# docker inspect 5e

访问成功
[root@docker ~ ]# curl 192.168.200.5:8080/biyesheji/fore/foreIndex/
[root@docker ~ ]# curl 192.168.11.82:8080/biyesheji/fore/foreIndex/








374

被折叠的 条评论
为什么被折叠?



