基于Docker构建Python开发环境

1. Dockerfile

dockerfile所在目录结构

shell 复制代码
FROM python:3.8
WORKDIR  /leo
RUN apt-get install -y wget
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
# ssh免密登录
COPY id_rsa.pub /leo
RUN mkdir ~/.ssh\
&& cat /leo/id_rsa.pub >> ~/.ssh/authorized_keys
RUN touch /leo/start.sh
RUN echo "service ssh restart; while [ 1 == 1 ]; do echo '123' ; sleep 100 ; done;" > /leo/start.sh
# ssh
RUN apt-get update \
&& apt-get install -y libwrap0 openssh-server\
&& echo "PermitRootLogin yes" >>  /etc/ssh/sshd_config
# git配置自动保存密码
RUN git config --global credential.helper store \
&& git config --global user.name "LeoLi"\
&& git config --global user.email  LeoLi.Li@groupm.com
ENTRYPOINT [ "bash", "/leo/start.sh"]

build

shell 复制代码
docker build -f ./DockerfilePython -t python38:1.0 .
2. docker run
复制代码
docker run -d  -p 10001:22  -p  8888:5000 -p 9000:9000 -p 7777:7777  -v C:\Users\leoli.li\DockerShare:/leo  --name=python38  leo-python38:latest

查看ssh服务是否正常启动

service ssh status

3.Vscode 免密打开项目

config

shell 复制代码
Host gme
    HostName 127.0.0.1
    Port 10001
    User root
    IdentityFile C:\Users\leoli.li\.ssh\id_rsa
git

第一次拉取代码需要输入用户名密码,后面就不需要了

相关推荐
兵慌码乱14 小时前
基于 MediaPipe 与 PySide2 的手势交互音乐控制系统实现:轻量化视觉交互全流程解析
python·opencv·计算机视觉·人机交互·手势识别·mediapipe·pyside2
luckdewei16 小时前
FastAPI 资产管理系统实战:复杂 ORM 关联、Alembic 迁移与 N+1 查询优化
python
aqi001 天前
15天学会AI应用开发(八)使用向量数据库实现RAG功能
人工智能·python·大模型·ai编程·ai应用
Csvn1 天前
`functools.lru_cache` —— 一行代码搞定缓存加速
后端·python
金銀銅鐵2 天前
[Python] 从《千字文》中随机挑选汉字
后端·python
武子康2 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
cup112 天前
[技术复盘] Windows Python 打包实战:Nuitka 环境踩坑总结与 CI 自动化构建全指南
python·ai·环境变量·ci·nuitka·skill
aqi002 天前
15天学会AI应用开发(七)有了大模型为什么还要引入RAG
人工智能·python·大模型·ai编程·ai应用