# Docker 编译 编译目录内含 `frontend` 和 `backend` 两个项目代码,将后端项目代码中的 `backend/docker/Dockerfile` 文件移动到最外层目录下。 编译目录结构 ```text omc ├── frontend 目录-前端项目代码 ├── backend 目录-后端项目代码 └── Dockerfile 文件-Docker编译需要 ``` ## 打包 - `VERSION` 变量是后端程序打包版本号注入 ```sh docker build --build-arg VERSION="2.240111" -t omc:2.240111 . ``` ## 部署 - `APPENV` 程序启动环境变量 local、prod (-e APPENV="local") ```sh docker run -d \ --privileged=true \ --restart=always \ -p 3222:22 \ -p 3280:80 \ -p 3230:3030 \ -p 3260:6060 \ -v /home/mask/Probject/omc/omc:/usr/local/omc \ -v /home/mask/Probject/omc/logs:/var/log/omc \ -e TZ="Asia/Shanghai" \ -m 512M \ --name omc_001 \ omc:2.240111 ``` ## 调试 ```sh docker run -it omc:2.240111 sh docker exec -it omc:2.240111 sh /usr/sbin/sshd && nginx -c /usr/local/omc/nginx/nginx.conf && /usr/local/omc/bin/backend --env prod -c /usr/local/omc/etc/omc.yaml ```