{"id":20786258,"url":"https://github.com/gopeak/masterlab-docker","last_synced_at":"2025-08-30T15:10:01.935Z","repository":{"id":96695889,"uuid":"156475861","full_name":"gopeak/masterlab-docker","owner":"gopeak","description":"以docker的方式来安装masterlab","archived":false,"fork":false,"pushed_at":"2023-07-20T06:15:48.000Z","size":3335,"stargazers_count":52,"open_issues_count":2,"forks_count":19,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-05-05T16:13:58.013Z","etag":null,"topics":["docker","masterlab","masterlab-docker"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gopeak.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-11-07T01:58:58.000Z","updated_at":"2024-12-18T09:36:47.000Z","dependencies_parsed_at":"2024-11-17T14:51:36.738Z","dependency_job_id":"114ed85e-5a64-4fce-bd26-3701abc321f2","html_url":"https://github.com/gopeak/masterlab-docker","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/gopeak/masterlab-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopeak%2Fmasterlab-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopeak%2Fmasterlab-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopeak%2Fmasterlab-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopeak%2Fmasterlab-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gopeak","download_url":"https://codeload.github.com/gopeak/masterlab-docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopeak%2Fmasterlab-docker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267383819,"owners_count":24078572,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-27T02:00:11.917Z","response_time":82,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","masterlab","masterlab-docker"],"created_at":"2024-11-17T14:51:24.851Z","updated_at":"2025-07-27T16:08:34.333Z","avatar_url":"https://github.com/gopeak.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"当前项目是以Docker方式部署项目管理工具：Masterlab, 目前只支持Masterlab3.0以上版本。  \nMasterlab的运行依赖于 Mysql Nginx|Apache PHP环境，Mysql和Nginx直接使用DockerHub的镜像版本，   \nPHP则需要我们构建FPM和Cli镜像，已push到DockerHub上。  \n```\n# 镜像仓库\nhttps://hub.docker.com/repository/docker/gopeak/masterlab\n# FPM和Cli镜像，主要是编译和加载了swoole,redis扩展\ngopeak/masterlab:php-fpm-74\ngopeak/masterlab:php-cli-74\n\n```\n\n提供 Docker Run 和 Docker-compose 两种部署方式。\n\n建议使用Docker-compose部署，要使用Docker Run方式的请访问 https://github.com/gopeak/masterlab-docker/blob/master/STEP.md\n\n\n\n## Docker-compose 安装步骤\n\n### 安装准备，先安装以下命令行工具\n\n- git unzip \n- docker [https://docs.docker.com/install/]\n- docker-compose [https://docs.docker.com/compose/install/#install-compose]\n\n\n### 第一步，获取Docker和Masterlab程序\n\n```\n git clone https://gitee.com/firego/masterlab-docker.git\n # 海外网络请用 https://github.com/gopeak/masterlab-docker.git\n\n cd ./masterlab-docker/www\n git clone https://gitee.com/firego/masterlab.git\n # 海外网络请用 https://github.com/gopeak/masterlab.git\n cd ./masterlab\n unzip ./vendor.zip          // 解压依赖的类库\n```\n   \n### 第二步，运行容器编排\n首先应配置镜像加速器（可选）:  \nLinux操作系统针对Docker客户端版本大于 1.10.0 的用户\n您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器 \n```\nmkdir -p /etc/docker\ntee /etc/docker/daemon.json \u003c\u003c-'EOF'\n{\n  \"registry-mirrors\": [\"https://c9jzs6ju.mirror.aliyuncs.com\"]\n}\nEOF\nsystemctl daemon-reload\nsystemctl restart docker\n```\n其他操作系统 请参考 https://www.runoob.com/docker/docker-mirror-acceleration.html  \n\n加速镜像配置完毕后，启用服务，第一次需要构建镜像\n```\n cd ../../              // 回到masterlab-docker的根目录\n docker-compose up -d   // 容器编排命令\n```\n容器编排成功后，以后可以使用以下命令控制服务\n```\n docker-compose ps           // 查看运行的容器\n docker-compose stop         // 停止服务\n docker-compose start        // 启动服务\n docker-compose restart      // 重启服务\n docker-compose start nginx  // 单独启动nginx服务\n docker-compose stop nginx   // 单独停止nginx服务\n docker-compose logs         // 查看服务日志输出\n docker-compose kill nginx   // 通过发送 SIGKILL 信号来停止指定服务的容器\n docker-compose logs         // 查看服务日志输出\n docker-compose up           // 构建并启动服务\n docker-compose build        // 构建或者重新构建服务\n docker network ls           // 查看docker的网络配置\n\n```\n\n\n### 第三步，赋予权限\n\n```\n # 查看运行已经运行的容器,找到php的容器id如ee84df733af6 \n docker ps          \n # 进入php\n docker exec -it ee84df733af6 /bin/bash       \n #  赋予读写权限，执行完 ctrl + d 退出\n chown -R www-data:www-data ./              \n # 按键 ctrl + d 退出\n```\n\n\n### 第四步，访问 /install  进行图形安装界面\n\nhttp://www.masterlab.com/install （先在hosts里追加：你的服务器ip www.masterlab.com ，成功后修改为你实际的域名）\n\n注: 连接数据库的地址，用户名,密码分别为  \n172.100.0.5 root 123456\n\n安装结束后 将 ./conf/nginx/conf.d/masterlab.conf 里的www.masterlab.com为你自己的域名即可\n\n \n### 第五步，启动Swoole服务\n- 首先，自定义构建 `PHP-CLI` 镜像，安装 `Git`，`Composer`，`Swoole` 等扩展和工具\n\n```shell\n# 构拉取php-cli镜像\ndocker pull gopeak/masterlab:php-cli-74\n```\n\n- 修改masterlab的配置文件 config.yml,找到 `socket/host`节点，将`127.0.0.1`修改为`0.0.0.0`\n```\nsocket:\n  host: '0.0.0.0'\n  port: '9002'\n  port_websocket: 9003\n \n```\n\n\n- 启动 `Swoole` 进程\n \n\n```shell\ndocker run -d  -it --rm --name www-data  --network masterlab-docker_docker_net  --ip 172.100.0.8 \\\n    -p 9002:9002 \\\n    -v \"$PWD\"/www/masterlab:/usr/workspaces/project \\\n    -w /usr/workspaces/project \\\n    gopeak/masterlab:php-cli-74 \\\n    php  ./bin/swoole_server.php\n```\n如果network报错，请执行 `docker network ls`查看网络名称,替换掉即可。\n\n- 最后以管理账号登录masterlab,在管理页面\"系统设置/邮件配置/修改\"，将`MasterlabSocket服务器地址`修改为`172.100.0.8`,`服务器类型`修改为`swoole`  \n  然后回到管理主界面 '/admin/main',查看MasterlabSocket服务的连接状态是否成功。\n\n \n\n\t\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgopeak%2Fmasterlab-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgopeak%2Fmasterlab-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgopeak%2Fmasterlab-docker/lists"}