Windows10安装:

1、安装MySQL
  1. # 创建容器
  2. docker run \
  3. -d \
  4. -p 3306:3306 \
  5. -e MYSQL_ROOT_PASSWORD=12345678910 \
  6. --name m_mysql mysql:5.7
  7. # 进入容器
  8. docker exec -it m_mysql /bin/bash
  9. # 开启MySQL远程链接
  10. mysql -uroot -p12345678910
  11. > use mysql
  12. > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
  13. > FLUSH PRIVILEGES;
  14. # 重启MySQL服务

2、部署PHP
  1. docker run \
  2. -d \
  3. -p 9000:9000 \
  4. -v D:/code/php/soterea/insurance_platform/public:/usr/share/nginx/html \
  5. --link m_mysql:mysql \
  6. --name m_phpfpm bitnami/php-fpm:7.2
  7. # 参数说明
  8. -v 开启宿主机和容器的映射 D:/code/php/soterea/insurance_platform/public 宿主机目录 /usr/share/nginx/html容器目录
  9. # 进入容器,修改PHP监听端口 www.conf
  10. listen 0.0.0.0:9000
  11. # 安装扩展:进入容器,执行安装,修改php.ini增加extension=redis.so重启服务即可.需先安装autoconf等扩展
  12. apt-get update
  13. pecl install redis
  14. # 出现错误,安装相应扩展即可,如gcc (apt-get install gcc)
  15. # configure: error: no acceptable C compiler found in $PATH

3、部署Nginx
  1. docker run \
  2. -d \
  3. -p 80:80 \
  4. -v D:/code/php/soterea/insurance_platform/public:/usr/share/nginx/html \
  5. --name m_nginx nginx
  1. docker run --name runoob-php-nginx -p 8083:80 -d \
  2. -v ~/nginx/www:/usr/share/nginx/html:ro \
  3. -v ~/nginx/conf/conf.d:/etc/nginx/conf.d:ro \
  4. --link php-fpm:php \
  5. nginx
  6. docker run --name mynginx -p 80:80 -v /var/www:/var/www -v /usr/local/nginx/conf/conf.d:/etc/nginx/conf.d -d nginx
  7. CONTAINER
  8. container
  9. docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root1234 --name mysql5.7 mysql:5.7
  10. docker run --name php7.2 -p 9000:9000 -v D:/code/php/soterea:/home/wwwroot -d php:7.2-fpm
  11. docker run --name nginx -p 80:80 -v D:/code/php/soterea:/home/wwwroot -d nginx
  12. docker run \
  13. -d \
  14. -p 3306:3306 \
  15. -e MYSQL_ROOT_PASSWORD=12345678910 \
  16. --name m_mysql mysql:5.7
  17. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
  18. > FLUSH PRIVILEGES;
  19. docker run \
  20. -d \
  21. -p 9000:9000 \
  22. -v D:/code/php/soterea/insurance_platform/public:/usr/share/nginx/html \
  23. --link m_mysql:mysql \
  24. --name m_phpfpm bitnami/php-fpm:7.2
  25. docker run \
  26. -d \
  27. -p 80:80 \
  28. --name m_nginx nginx
  29. docker cp m_nginx:/etc/nginx/nginx.conf D:\container\conf
  30. docker cp m_nginx:/etc/nginx/conf.d/default.conf D:\container\conf
  31. docker cp D:\container\conf\default.conf m_nginx:/etc/nginx/conf.d
  32. docker run \
  33. -d \
  34. -p 80:80 \
  35. -v D:/code/php/soterea/insurance_platform/public:/usr/share/nginx/html \
  36. -v D:/container/conf/default.conf:/etc/nginx/nginx.conf:ro \
  37. -v D:/container/conf:/etc/nginx/conf.d \
  38. -v D:/container/logs/wwwlogs:/var/log/nginx \
  39. --link m_phpfpm:phpfpm \
  40. --name m_nginx nginx
  41. docker run \
  42. -d \
  43. -p 80:80 \
  44. -v D:/code/php/soterea/insurance_platform/public:/usr/share/nginx/html \
  45. --name m_nginx nginx
  46. docker run \
  47. -d \
  48. -p 80:80 \
  49. -v D:/code/php/soterea/insurance_platform:/usr/share/nginx/html \
  50. --name m_nginx nginx
  51. docker cp m_phpfpm:/opt/bitnami/php/etc/php-fpm.d/www.conf D:\container\conf
  52. docker cp D:\container\conf\default.conf m_nginx:/etc/nginx/conf.d
  53. docker cp m_phpfpm:/opt/bitnami/php/etc/php.ini D:\container\conf
  54. docker cp D:\container\conf\php.ini m_phpfpm:/opt/bitnami/php/etc/