feat: dockerfile文件编写
This commit is contained in:
@@ -1,23 +1,38 @@
|
||||
# Docker 编译
|
||||
|
||||
编译目录内含 `frontend` 和 `backend` 两个项目代码,将后端项目代码中的 `backend/docker/Dockerfile` 文件移动到最外层目录下。
|
||||
编译目录内含 `omc_web` 和 `omc_api` 两个项目代码
|
||||
|
||||
将后端项目代码中的 `docker/Dockerfile` 文件移动到最外层目录下,`docker/omc`是内部文件挂载的文件资源。
|
||||
|
||||
编译目录结构
|
||||
|
||||
```text
|
||||
omc
|
||||
├── frontend 目录-前端项目代码
|
||||
├── backend 目录-后端项目代码
|
||||
probject
|
||||
├── omc_web 目录-前端项目代码
|
||||
├── omc_api 目录-后端项目代码
|
||||
└── Dockerfile 文件-Docker编译需要
|
||||
```
|
||||
|
||||
## 打包
|
||||
内部文件资源
|
||||
|
||||
| 路径 | 说明 |
|
||||
| --------------------------- | -------------------------- |
|
||||
| /usr/local/etc/omc/static | 网管静态资源文件路径 |
|
||||
| /usr/local/etc/omc/upload | 网管上传文件资源路径 |
|
||||
| /usr/local/etc/omc/omc.yaml | 网管配置文件 |
|
||||
| /usr/local/etc/omc | 网管与网元之间相关文件 |
|
||||
| /etc/nginx/cert | 网管前端 nginx 代理证书 |
|
||||
| /etc/nginx/nginx.conf | 网管前端 nginx 代理配置 |
|
||||
| /var/log | 网管相关日志输出 |
|
||||
| /tmp/omc | 存放从网元拉取到本地的文件 |
|
||||
|
||||
## 编译
|
||||
|
||||
- `VERSION` 变量是后端程序打包版本号注入
|
||||
|
||||
```sh
|
||||
|
||||
docker build --build-arg VERSION="2.240112" -t omc:2.240112 .
|
||||
docker build --build-arg VERSION="2.241101" -t omc:2.241101 .
|
||||
|
||||
```
|
||||
|
||||
@@ -30,37 +45,40 @@ docker build --build-arg VERSION="2.240112" -t omc:2.240112 .
|
||||
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 \
|
||||
-p 8822:22 \
|
||||
-p 8880:80 \
|
||||
-p 8830:33030 \
|
||||
-p 8833:33033 \
|
||||
-p 8840:33040 \
|
||||
-p 8860:33060 \
|
||||
-v /home/manager/probject/omc_api/docker/omc:/usr/local/etc/omc \
|
||||
-v /home/manager/probject/omc_api/docker/omc/logs:/var/log \
|
||||
-v /home/manager/probject/omc_api/docker/omc/nginx/cert:/etc/nginx/cert \
|
||||
-v /home/manager/probject/omc_api/docker/omc/nginx/nginx.conf:/etc/nginx/nginx.conf \
|
||||
-e TZ="Asia/Shanghai" \
|
||||
-e APPENV="local" \
|
||||
-m 512M \
|
||||
--name omc_002 \
|
||||
omc:2.240112
|
||||
|
||||
--name omc2.241101 \
|
||||
omc:2.241101
|
||||
|
||||
```
|
||||
|
||||
## 镜像导出导入
|
||||
|
||||
```sh
|
||||
docker save omc:2.240112 -o omc_r2.240112.tar
|
||||
docker save omc:2.241101 -o omc_r2.241101.tar
|
||||
|
||||
docker load -i omc_r2.240112.tar
|
||||
docker load -i omc_r2.241101.tar
|
||||
```
|
||||
|
||||
## 调试
|
||||
|
||||
```sh
|
||||
|
||||
docker run -it omcxxx sh
|
||||
docker run -it omc:xxx sh
|
||||
|
||||
docker exec -it omxxx sh
|
||||
docker exec -it omc:xxx 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
|
||||
/usr/sbin/sshd -D && nginx -c /etc/nginx/nginx.conf && /usr/local/bin/omc --env prod -c /usr/local/etc/omc/omc.yaml
|
||||
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user