1.2233466866/lnmp 镜像下载
CentOS7+Nginx+MySQL+PHP7
2.使用2233466866/lnmp:latest
## CentOS7 + Nginx + MySQL + php-^7.4
docker pull 2233466866/lnmp:latest
启动(Start)
# 端口映射自行指定,容器名称自行指定为lnmp
mkdir -p /data/lnmp/data
mkdir -p /data/lnmp/web
docker run -dit -p 80:80 -p 443:443 -p 3306:3306 -p 9000:9000 -v /data/lnmp/web:/www \
-v /data/lnmp/data:/data/mysql --privileged=true --name=mylnmp1 -h mylnmp1 2233466866/lnmp:latest
--privileged=true:允许改镜像并提交。
docker exec -it mylnmp1 /bin/bash
3.使用MySQL
cat /var/log/mysqld.log |grep password
[root@mylnmp1 mysql]# cat /var/log/mysqld.log |grep password
2024-07-05T09:20:39.469914Z 1 [Note] A temporary password is generated for root@localhost: djo3YCumEK%W
--登陆并重置密码。
mysql -uroot -p'djo3YCumEK%W'
mysql> alter user user() identified by 'Sspu#123';
Query OK, 0 rows affected (0.00 sec)
4.检查服务。
[root@mylnmp1 mysql]# ps -aux |grep php7
root 59 0.0 0.1 231664 8900 ? Ss 17:20 0:00 php-fpm: master process (/usr/localphp7/etc/php-fpm.conf)
[root@mylnmp1 mysql]# ps -aux |grep php
root 59 0.0 0.1 231664 8900 ? Ss 17:20 0:00 php-fpm: master process (/usr/localphp7/etc/php-fpm.conf)
www 61 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 62 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 63 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 64 0.0 0.1 231664 8396 ? S 17:20 0:00 php-fpm: pool www
www 65 0.0 0.1 231664 8396 ? S 17:20 0:00 php-fpm: pool www
www 66 0.0 0.1 231664 8396 ? S 17:20 0:00 php-fpm: pool www
www 67 0.0 0.1 231664 8396 ? S 17:20 0:00 php-fpm: pool www
www 68 0.0 0.1 231664 8396 ? S 17:20 0:00 php-fpm: pool www
www 69 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 70 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 71 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 72 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 74 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 75 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
www 76 0.0 0.1 231664 8392 ? S 17:20 0:00 php-fpm: pool www
[root@mylnmp1 mysql]# ps -aux |grep nginx
root 39 0.0 0.0 19528 920 ? Ss 17:20 0:00 nginx: master process /usr/local/nginx/sbin/nginx
www 45 0.0 0.5 61940 43456 ? S 17:20 0:00 nginx: worker process
root 172 0.0 0.0 10692 980 pts/1 S+ 17:23 0:00 grep --color=auto nginx
[root@mylnmp1 mysql]# ps -aux |grep mysql
mysql 124 0.2 2.2 1131840 178200 ? Sl 17:20 0:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
[root@mylnmp1 mysql]# systemctl status nginx
● nginx.service - Nginx service.
Loaded: loaded (/etc/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2024-07-05 17:20:37 CST; 6min ago
Process: 34 ExecStart=/usr/local/nginx/sbin/nginx (code=exited, status=0/SUCCESS)
Main PID: 39 (nginx)
CGroup: /docker/5cbcb8da7410130eda76e7cc6ee970396d7e7e38f20b5de25662436012aecd07/system.slice/nginx.service
├─39 nginx: master process /usr/local/nginx/sbin/nginx
└─45 nginx: worker process
Jul 05 17:20:37 mylnmp1 systemd[1]: Starting Nginx service....
Jul 05 17:20:37 mylnmp1 systemd[1]: Started Nginx service..
[root@mylnmp1 mysql]# systemctl status mysqld
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2024-07-05 17:20:42 CST; 6min ago
Process: 122 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Process: 35 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 124 (mysqld)
CGroup: /docker/5cbcb8da7410130eda76e7cc6ee970396d7e7e38f20b5de25662436012aecd07/system.slice/mysqld.service
└─124 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
Jul 05 17:20:37 mylnmp1 systemd[1]: Starting MySQL Server...
Jul 05 17:20:42 mylnmp1 systemd[1]: Started MySQL Server.
[root@mylnmp1 mysql]# systemctl status php7
● php7.service - Php7 service.
Loaded: loaded (/etc/systemd/system/php7.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2024-07-05 17:20:37 CST; 7min ago
Process: 33 ExecStart=/usr/local/php7/sbin/php-fpm (code=exited, status=0/SUCCESS)
Main PID: 59 (php-fpm)
CGroup: /docker/5cbcb8da7410130eda76e7cc6ee970396d7e7e38f20b5de25662436012aecd07/system.slice/php7.service
├─59 php-fpm: master process (/usr/local/php7/etc/php-fpm.conf)
├─61 php-fpm: pool www
├─62 php-fpm: pool www
├─63 php-fpm: pool www
├─64 php-fpm: pool www
├─65 php-fpm: pool www
├─66 php-fpm: pool www
├─67 php-fpm: pool www
├─68 php-fpm: pool www
├─69 php-fpm: pool www
├─70 php-fpm: pool www
├─71 php-fpm: pool www
├─72 php-fpm: pool www
├─74 php-fpm: pool www
├─75 php-fpm: pool www
└─76 php-fpm: pool www
Jul 05 17:20:37 mylnmp1 systemd[1]: Starting Php7 service....
Jul 05 17:20:37 mylnmp1 systemd[1]: Started Php7 service..
5.外部访问宿主机访问容器内的MySQL;
[root@es1 data]# ln -sv /data/docker/data/overlay2/b82610bba00ae58c376028ffbd495010db5a6bdf964048dd7458aa6833ab5d29/merged/var/lib/mysql/mysql.sock /etc/mysql.sock
‘/etc/mysql.sock’ -> ‘/data/docker/data/overlay2/b82610bba00ae58c376028ffbd495010db5a6bdf964048dd7458aa6833ab5d29/merged/var/lib/mysql/mysql.sock’
--外部机器没有mysql.sock ,用容器里面的mysql.sock做一个软连接到外部:/etc/mysql.sock
[root@es1 data]# mysql -uroot -pSspu#123 -P3306 -S /etc/mysql.sock
"root@localhost Fri Jul 5 17:42:14 2024 17:42:14 [(none)]">show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
6.访问web界面
[root@es1 web]# curl 192.168.1.7
Hello,I'm httpd,mysql,nginx website!!!