基于Docker构建Python开发环境

news2024/9/26 3:30:37
1. Dockerfile

dockerfile所在目录结构
在这里插入图片描述

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

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

Host gme
    HostName 127.0.0.1
    Port 10001
    User root
    IdentityFile C:\Users\leoli.li\.ssh\id_rsa

在这里插入图片描述

git

第一次拉取代码需要输入用户名密码,后面就不需要了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1284655.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

戴森发布全新Airstrait吹风直发器,美发科技品类再添力作

——利用气流,吹干的同时拉直头发,无需热夹板,头发无热损伤 (2023年11月30日,上海)戴森今日重磅发布全新美发造型产品——戴森Airstrait™吹风直发器,作为戴森美发科技品类的又一创新力作&…

Redis Hash数据类型

Redis Hash数据类型 几乎所有的主流编程语言都提供了哈希(hash)类型,它们的叫法可能是哈希、字典、关联数组、映射。在 Redis 中,哈希类型是指值本身又是一个键值对结构,形如key “key”,value {ffield1, value1 }, … {fieldN…

算法通关村第十六关-黄金挑战滑动窗口与堆的结合

大家好我是苏麟 , 今天带来一道小题 . 滑动窗口最大值 描述 : 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 题目 : …

探索图像生成中的生成对抗网络 (GAN) 世界

一、介绍 生成对抗网络(GAN)的出现标志着人工智能领域的一个重要里程碑,特别是在图像生成领域。GAN 由 Ian Goodfellow 和他的同事于 2014 年提出,代表了机器学习中的一种新颖方法,展示了生成高度逼真和多样化图像的能…

ping会出现的两种问题-----time out 和 unreachable

ping命令常见的返回信息有两种: Request timed out和Destination host unreachable 两者的区别是: Request timed out是ping包没有返回的路由,导致超时 Destination host unreachable是ping包没有去到目的地的路由 来看一个例子: 各部件配置如下&…

电子学会C/C++编程等级考试2022年09月(四级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:最长上升子序列 一个数的序列bi,当b1 < b2 < … < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, …, aN),我们可以得到一些上升的子序列(ai1, ai2, …, aiK),这里1 <= i1 < i2 < … &l…

React全站框架Next.js使用入门

Next.js是一个基于React的服务器端渲染框架&#xff0c;它可以帮助我们快速构建React应用程序&#xff0c;并具有以下优势&#xff1a; 1. 支持服务器端渲染&#xff0c;提高页面渲染速度和SEO&#xff1b; 2. 自带webpack开发环境&#xff0c;实现即插即用的特性&#xff1b;…

新华三数字大赛复赛知识点 网络访问控制

EAD解决方案、portal认证、以太网访问控制列表 EAD&#xff1a; 网络安全从本质上讲是管理问题&#xff0c;&#xff08;End user Admission Domination&#xff09;解决方案从控制用户终端安全接入网络的角度入手&#xff0c;整合网络接入控制与终端安全产品&#xff0c;通过…

nginx对多个服务器的高可用,容易出现鉴权失败

高可用简单测试正常&#xff0c;但是出现高概率401鉴权错误 抓包发现&#xff0c;确实是401 &#xff0c; 而鉴权是两次交互&#xff1a; 抓包发现鉴权到不同服务器上了&#xff0c;导致鉴权没有完成。 此时就需要我们的ip_hash,把同一IP地址的请求,都分配给同一台后端服务器&…

【mysql】基于binlog数据恢复指令和坑

文章目录 1.binlog相关配置是否开启binlogbinlog日志格式 2.导出binlog日志mysqlbinlog指令updateinsertdeletebinlog中的事件 3.数据恢复4.特别注意的坑为什么bash脚本执行mysqlbinlog&#xff0c;无法找到指令为什么执行mysqlbinlog&#xff0c;无法数据恢复 1.binlog相关配置…

互联网Java工程师面试题·Spring Boot篇·第一弹

目录 1、什么是 Spring Boot&#xff1f; 2、Spring Boot 有哪些优点&#xff1f; 3、什么是 JavaConfig&#xff1f; 4、如何重新加载 Spring Boot 上的更改&#xff0c;而无需重新启动服务器&#xff1f; 5、Spring Boot 中的监视器是什么&#xff1f; 6、如何在 Sprin…

stm32一种步进电机查表法驱动

文章目录 一、定时器基础频率二、驱动原理三、关键代码 对于stm32芯片来说&#xff0c;步进电机的驱动由于要在中断中不断计算下一次脉冲的时间而极其消耗算力&#xff0c;使用计算的方法对于芯片的算法消耗更高&#xff0c;特别是在f1这种算力比较低的芯片上&#xff0c;这时候…

【数电笔记】25-mos管的开关特性

目录 说明&#xff1a; mos管的符号 1. N沟道增强型 2. P沟道增强型 3. N沟道耗尽型 4. P沟道耗尽型 mos管的静态开关特性 1. N沟道增强型MOS管 2. P沟道增强型MOS管 说明&#xff1a; 笔记配套视频来源&#xff1a;B站&#xff1b;本系列笔记并未记录所有章节&#…

(C语言)判定一个字符串是否是另一个字符串的子串,若是则返回子串在主串中的位置。

要求&#xff1a; &#xff08;1&#xff09;在主函数中输入两个字符串&#xff0c;调用子函数cmpsubstr()判断&#xff0c;并在主函数输出结果。 &#xff08;2&#xff09;子函数的返回值为-1表示未找到&#xff0c;否则返回子串的位置&#xff08;起始下标&#xff09;。 …

883重要知识点

&#xff08;1&#xff09;程序结构分三种&#xff1a;顺序结构&#xff0c;选择结构&#xff0c;循环结构。 &#xff08;2&#xff09;该程序都要从main&#xff08;&#xff09;开始&#xff0c;然后从最上面往下。 &#xff08;3&#xff09;计算机的数据在电脑中保存以二…

微信小程序uni.chooseImage()无效解决方案

Bug场景&#xff1a; 微信小程序在上传图片时可以通过 uni.chooseImage()方案进行上传&#xff0c;这里不再赘述具体参数。一直项目都可以正常使用&#xff0c;突然有一天发现无法使用该方法&#xff0c;于是查了一下&#xff0c;发现是用户隐私协议问题。故记录一下解决方案。…

11、pytest断言预期异常

官方用例 # content of test_exception_zero.py import pytestdef test_zero_division():with pytest.raises(ZeroDivisionError):1/0# content of test_exception_runtimeerror.py import pytestdef test_recursion_depth():with pytest.raises(RuntimeError) as excinfo:def…

STM32上模拟CH340芯片的功能 (一)

#虚拟串口模拟CH340# 后续代码更新放gitee 上 一、思路 1. 确定通信接口&#xff1a;CH340是一款USB转串口芯片&#xff0c;因此您需要选择STM32上的某个USB接口来实现USB通信。通常情况下&#xff0c;STM32系列芯片都有内置的USB接口&#xff0c;您可以根据您的具体型号选择…

Excel 实现在某一列中循环合并多行单元格

在 Excel 中&#xff0c;使用 VBA&#xff08;Visual Basic for Applications&#xff09;宏可以轻松实现多行合并单元格的操作。下面是一个简单的 VBA 代码实现循环合并3行单元格的示例&#xff1a; 1. 打开 Excel 在你的 Excel 文件中&#xff0c;按下 Alt F11 打开 VBA 编…

Raspberry Pi 2, 2 of n - Pi 作为 IoT 消息代理

目录 介绍 环境 先决条件 - 设置静态 IP 地址 安装 Mosquitto 启动/停止 Mosquitto 配置先决条件 - 安装 mqtt_spy 配置 Mosquitto 配置 Mosquitto - 无安全性 测试 Mosquitto 配置 - 无安全性 配置 Mosquitto - 使用密码身份验证 Mosquitto 测试 - 带密码验证 概括 介绍 在本文…