前言
最近无聊玩了下虚拟机,突发奇想在虚拟机中使用docker部署一下系统
1、准备工作
虚拟机、docker、docker-compose下载就不多说,各位可以在网上找到很多案例
2、代码传输
将 Windows 宿主机的项目文件拷贝到 VMware Ubuntu 虚拟机,我使用了共享文件夹的方法,还有其他几种,这里就不多说。共享文件夹步骤如下:
1. 安装 VMware Tools
# 在Ubuntu虚拟机内操作
sudo apt update
sudo apt install open-vm-tools open-vm-tools-desktop
sudo reboot
2. 配置共享文件夹
- 关闭Ubuntu虚拟机
- VMware菜单 → 虚拟机 → 设置 → 选项 → 共享文件夹
- 选择"总是启用" → 添加Windows目录(如
D:\projects)
3. 访问共享目录
# 在Ubuntu中查看挂载点
ls /mnt/hgfs/
项目代码目录为:
project/
├── backend/ # Django 项目
│ ├── requirements.txt
│ └── ...
├── web/ # Vue 项目
│ ├── package.json
│ └── ...
├── docker_env/ #dockerfile文件
│ ├── django
│ ├── mysql
│ ├── nginx
│ └── web
└── docker-compose.yml
3、上传阿里云镜像
1.进入代码文件所在目录,打包web基础Build包,并上传到阿里云镜像
docker build -f ./docker_env/web/DockerfileBuild -t hangzhou.personal.cr.aliyuncs.com/hunlong/lims-web:v1.0-alpine .
docker push hangzhou.personal.cr.aliyuncs.com/hunlong/lims-web:v1.0-alpine
2.打包Backend基础Build包
docker build -f ./docker_env/django/DockerfileBuild -t hangzhou.personal.cr.aliyuncs.com/hunlong/lims-backend:v1.0-alpine .
docker push hangzhou.personal.cr.aliyuncs.com/hunlong/lims-backend:v1.0-alpine
3. 在push到阿里云镜像的时候可能会出现denied: requested access to the resource is denied错误。
解决方法如下:在阿里云镜像中创建对应仓库,在docker login重新登录以下,最后推送
4、docker-compose
# 后台启动
docker-compose up -d
# docker-compose 停止
docker-compose down
# docker-compose 重启
docker-compose restart
# docker-compose 启动时重新进行 build
docker-compose up -d --build