当前位置:   article > 正文

docker-compose部署lnmp_虚拟机docker compose 一键部署lnmp

虚拟机docker compose 一键部署lnmp

docker介绍

  Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器或Windows机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。 Docker利用Linux核心中的资源分离机制,例如cgroups,以及Linux核心命名空间(namespaces),来创建独立的容器(containers)。这可以在单一Linux实体下运作,避免引导一个虚拟机造成的额外负担。 docker利用docker-proxy组件控制iptables or ipvs 来实现端口映射。

docker-compose

  在容器部署多的情况下,一个一个的部署容器,会比较繁琐,所以诞生了docke-compose,docker-compose是单机编排的程序,只需要一条命令即可部署多个相关联的容器。

开始部署

准备所需文件夹

mkdir -p /data/docker/{mysql,nginx/conf.d,www}

创建docker-compose.yml文件

  1. version: '3'
  2. networks:
  3. lamp:
  4. driver: bridge
  5. services:
  6. mysql1:
  7. image: mysql:5.7
  8. ports:
  9. - "3306:3306"
  10. networks:
  11. - lamp
  12. volumes:
  13. - /data/docker/mysql:/var/lib/mysql
  14. environment:
  15. MYSQL_ROOT_PASSWORD: 411203036
  16. php:
  17. networks:
  18. - lamp
  19. image: bitnami/php-fpm:7.4 #devilbox/php-fpm
  20. volumes:
  21. - /data/docker/www:/usr/share/nginx/html
  22. nginx:
  23. networks:
  24. - lamp
  25. image: nginx
  26. ports:
  27. - "200:80"
  28. volumes:
  29. - /data/docker/www:/usr/share/nginx/html
  30. - /data/docker/nginx/conf.d:/etc/nginx/conf.d

创建nginx配置文件

vi /data/docker/nginx/conf.d/default.conf

  1. server {
  2. listen 80;
  3. server_name localhost;
  4. root /usr/share/nginx/html;
  5. #charset koi8-r;
  6. #access_log /var/log/nginx/host.access.log main;
  7.     index index.php;
  8. location ~ \.php {
  9. include fastcgi_params;
  10. #fastcgi_pass 172.16.0.10:9000;
  11. fastcgi_pass php:9000;
  12. fastcgi_index index.php;
  13. fastcgi_param RUN_ENV 'dev';
  14. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  15. }
  16. #error_page 404 /404.html;
  17. # redirect server error pages to the static page /50x.html
  18. error_page 500 502 503 504 /50x.html;
  19. location = /50x.html {
  20. root /usr/share/nginx/html;
  21. }
  22. }

启动docker-compose文件

docker-compose up -d

描述

/data/docker/www 网站存放目录

/data/docker/mysql 数据库数据目录

php镜像可能会有点问题,一些组件没安装,如果搭建的网站缺少组件,请编写dockerfile 安装

效果

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/829096
推荐阅读
相关标签
  

闽ICP备14008679号