拉拉多克1。官网地址#laradock英文地址https://laradock.io/#laradock中文文档https://laradock-docs.linganmin.cn/zh/documentation/#docker-synchttps://docker-sync.readthedocs。io/zh/最新/2。安装准备*[Git](https://git-scm.com/downloads)*[Docker](https://www.docker.com/products/docker/)`>=17.123。目录结构//官网有多种目录格式。我个人喜欢用一个laradock作为入口+laradock+project-1+project-24。安装gitclonehttps://github.com/laradock/laradock.git5。配置1.创建一个配置文件cpenv-example.env2。配置环境选项//第一步(重要),改成阿里源(phpDockerfile官方也吐槽过这个。。。)CHANGE_SOURCE=true容器环境配置//workspace宿主机挂载目录APP_CODE_PATH_HOST=..///容器目录APP_CODE_PATH_CONTAINER=/var/www//timezoneWORKSPACE_TIMEZONE=PRCPHPconfiguration//optionalphpversion:7.4-7.3-7.2-7.1-7.0-5.6PHP_VERSION=7.3//由于网络原因,此扩展可能会导致安装失败。建议改为falseWORKSPACE_INSTALL_IMAGEMAGICK=falsePHP_FPM_INSTALL_IMAGEMAGICK=falseNGINX配置NGINX_HOST_HTTP_PORT=80//http监听端口NGINX_HOST_HTTPS_PORT=443//https监听端口NGINX_HOST_LOG_PATH=./logs/nginx///ng目录NGINX_SITES_PATH=./nginx/sites///nginx配置文件目录NGINX_PHP_UPSTREAM_CONTAINER=php-fpm//绑定php-fpm处理NGINX_PHP_UPSTREAM_PORT=9000//php-fpm端口NGINX_SSL_PATH=./nginx/ssl///nginxssl路径APACHE配置(同上nginx)APACHE_HOST_HTTP_PORT=80APACHE_HOST_HTTPS_PORT=443APACHE_HOST_LOG_PATH=./logs/apache2APACHE_SITES_PATH=./apache2/sitesAPACHE_PHP_UPSTREAM_CONTAINER=php-fpmAPACHE_PHP_UPSTREAM_PORT=9000APACHE_PHP_UPSTREAM_TIMEOUT=60APACHE_DOCUMENT_ROOT=/var/www/MYSQL配置MYSQL_VERSION=5.7//版本,latest为最新版MYSQL_DATABASE=default//默认创建的数据库名MYSQL_USER=root//用户名MYSQL_PASSWORD=root//密码MYSQL_PORT=3306//监听端口MYSQL_ROOT_PASSWORD=root//root用户密码MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.dREDIS配置REDIS_PORT=6379#默认redis是没有密码的,如果要加密码//1-只修改密码,需要修改docker-compose.yml布局文件redis:build:./redisvolumes:-${DATA_PATH_HOST}/redis:/data#添加这一行redissetpassword命令:redis-server--requirepassyour_passwordports:-"${REDIS_PORT}:6379"networks:-backend//2-直接添加redis的配置文件,修改redis的Dockerfile1。注意`bind127.0.0.1`//绑定本地ip2。`protected-mode`changeFor`no`//只允许本地访问3.`requirepassyour_password`//添加你的密码//其他类似的配置可以在.env中找到,例如:Memcached,RabbitMQ,phpMyAdmin,ElasticSearch,Varnish,HAProxy,Jenkins,Gitlab,tomcat等3.配置docker-sync(可选)#注意:此项可选,用于mac/windows,加快宿主机和容器的文件同步速度#Step1(modifyin.env)//选择加载的docker-compose配置文件,如果需要使用docker-sync,在末尾添加":docker-compose.sync.yml"COMPOSE_FILE=docker-compose.yml//即可配置文件同步策略,mac->native_osx,windows->unisonDOCKER_SYNC_STRATEGY=native_osx#Step2(docker-compose.sync.yml中修改)//添加需要启动的服务,如果包含APP_CODE_PATH_HOST变量映射目录,修改映射主机目录到“applications-sync”,注意缩回6.Start#Everytimeyou修改配置文件,需要先重新构建//构建,然后启动cdlaradockdocker-composebuildnginxredismysqlphp-fpmworkspacedocker-composeup-dnginxmysqlredis//直接启动,会自动构建拉取docker-composeup-dnginxmysqlredisphp-fpmworkspace7.常用指令//查看运行状态"State"=>"up"即启动成功docker-composeps#restart/close/deletedocker-composerestart/stop/down//进入工作容器docker-composeexecworkspacebash8。配置nginx接入服务//nginx主配置文件已经包含`your_path/laradock/nginx/sites`目录下的`*.conf`文件cplaravel.conf.examplelaravel.conf//下面是配置部分nginx服务器服务器{听80;听[::]:80;#对于https#监听443ssl;#听[::]:443sslipv6only=on;#ssl_certificate/etc/nginx/ssl/default.crt;#ssl_certificate_key/etc/nginx/ssl/default.key;#修改你的域名或ip,本地开发可以修改`/etc/hosts`中的映射关系server_nametest.cc;#修改你的项目路径root/var/www/public;indexindex.phpindex.htmlindex.htm;位置/{try_files$uri$uri//index.php$is_args$args;}.........#修改你的日志文件error_log/var/log/nginx/laravel_error.log;access_log/var/log/nginx/laravel_access.log;}//mkdirpublicchmod-R755./publiccho-e"./public/index.php//nginx修改了配置文件,需要重启,这里我们直接重启容器,省去进入nginx容器重启的麻烦nginxdocker-composerestart//浏览器输入"test.cc”,此时如果能看到phpinfo输入的信息,说明配置成功。
