请确保你的Windows系统是专业版
-
访问Docker官方网站并下载Docker Desktop:
Docker Desktop: The #1 Containerization Tool for Developers | Docker
2.安装WSL2
① 启动 PowerShell:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
②安装虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
③下载linux内核更新包
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
④将WSL2设置为默认版本
wsl --set-default-version 2
⑤安装linux分发版,在Microsoft Store上,我个人安装的是Ubuntu 20.04的版本,也可以根据自己不同的需求来安装。
⑥安装好后首次启动会创建一个用户名和密码,输入完成后安装成功!
3.打包本地项目到docker容器,首先我们需要在项目下创建一个Dokcerfile的文件,这是我在本地打包dokcerfile的文件的内容,大家可以参考一下。
FROM python:3.8-slim-buster
RUN apt-get update
RUN apt-get install ffmpeg libsm6 libxext6 -y
WORKDIR /app_roomDet_test
ADD . /app_roomDet_test
RUN pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
EXPOSE 2024
CMD ["python", "flask_roomClassly.py"]
然后我们在打开终端CMD或者打开PowerShell,cd到项目文件夹下,开始打包镜像:
docker build -t westhrook579/seg_wall_DeepGlob .
4.启动镜像:
可以在docker的web界面里找到自己创建的镜像然后启动,这里我们也可以用命令行来启动,这里的参数大家如果不理解的话可以去搜一下,这样本地的项目就可以直接映射到dokcer镜像里,在本地修改任何代码,然后在docker重启镜像就能生效!
docker run -d -p 2025:2025 --name seg_wall -v E:\seg_wall_Deepglob:/app_seg_wall westhrook579/seg_wall_deepglob
本人也是刚玩docker的小白,简化了一下部署流程,如果有不对的地方欢迎各位大佬指点!