【Python编程工具】【ssh连接Docker容器】如何使用Docker容器里的python环境,如何调试在容器中的代码

文章目录

  • 方案一览
    • Gateway软件介绍
    • 启动容器
    • 配置apt源
    • 在容器中安装SSH服务器
    • 配置SSH服务器
    • 生成SSH密钥
    • 启动SSH服务
    • 为root创建密码
    • 连接到容器
    • 使用Gateway

方案一览

本篇博客将介绍如何在Docker容器中打开SSH连接服务,以及如何使用JetBrains Gateway软件进行代码调试。

Gateway软件介绍

JetBrains Gateway是一款紧凑型桌面应用,可让您通过 JetBrains IDE 远程工作,甚至无需下载这些IDE。通过在桌面端安装这款软件,您可以直接调试服务器上的代码。

JetBrains Gateway

启动容器

使用以下命令启动容器,其中 --net host 参数是为了让容器使用宿主机的网络。

docker run -it --net host --gpus all kevinchina/deeplearning:cu11.8ubuntu22.04 bash

您也可以指定端口,比如将宿主机的2024端口映射到容器的22端口:

docker run -it -p 2024:22 --gpus all kevinchina/deeplearning:cu11.8ubuntu22.04 bash

配置apt源

详细配置apt源,请参考博客:https://qq742971636.blog.csdn.net/article/details/134291339

对于Ubuntu 22.04,配置文件如下:

vim /etc/apt/sources.list
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse# deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse## Pre-released source, not recommended.
# deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
# deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse

在容器中安装SSH服务器

在容器内运行以下命令来安装SSH服务器,确保已经安装了openssh-server:

apt-get update
apt-get install -y openssh-server

配置SSH服务器

编辑SSH服务器配置文件 /etc/ssh/sshd_config,确保以下行被设置为合适的值:

Port 2024 # 根据需求设置,容器Linux开启SSH服务的默认端口是22
PermitRootLogin yes  # 允许root用户登录(可选,根据需要设置)
PasswordAuthentication yes  # 允许密码身份验证

生成SSH密钥

如果还没有SSH密钥对,可以生成一个:

ssh-keygen -t rsa -b 2048

启动SSH服务

启动SSH服务:

service ssh start

或者,如果容器中使用systemd,使用以下命令:

systemctl start ssh

为root创建密码

为root创建密码,例如设为 nihao123

passwd root
nihao123

连接到容器

现在,可以使用SSH连接到Docker容器。在另一台服务器上执行以下命令:

ssh -p 2024 user@your_docker_host_ip

也可以直接使用root登录:

ssh -p 2024 root@10.20.31.31

请注意,出于安全考虑,建议使用SSH密钥进行身份验证,并将 PasswordAuthentication 设置为 no。确保防火墙允许通过所选的SSH端口的流量。

使用Gateway

这个就比较轻松了,别的服务器都可以ssh连接到容器里面了,此时,Gateway或者其他ssh工具就当然也是可以直接用ssh连接到容器中去。

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

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

相关文章

基于springboot+vue的社区医院信息平台系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容:毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…

vp9协议笔记

vp9协议笔记📒 本文主要是对vp9协议的梳理,协议的细节参考官方文档:VP9协议链接(需要加速器) vp9协议笔记 vp9协议笔记📒1. 视频编码概述2. 超级帧superframe(sz):2. fr…

VBA即用型代码手册之改变主窗口标题栏名称及隐藏工作表

我给VBA下的定义:VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率,而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。 作为我的学员要利用我的积木编程思想,积木编程最重要的是积木如何搭建…

JavaFX场景入门

目录 JAVAFX jdk1.8以上引入javafx类库 JDK11JAVAFX(eclipse) 小知识点 舞台Stage platform、screen类 Scene场景类 查看电脑屏幕宽高 Group容器 JAVAFX项目 Image javafx场景 javaFx文本 javaFX颜色 JAVAFX jdk1.8以上引入javafx类库 JDK11JAVAFX(eclipse) 方式…

threejs学习

重要概念(场景、相机、渲染器) 如下图所示,我们最终看到浏览器上生成的内容是通过虚拟场景和虚拟相机被渲染器渲染后的结果,下面首先介绍这三个概念,将贯穿所有简单复杂的threejs项目。 场景 Scene 虚拟的3D场景&a…

扫码登录流程

扫码登录 场景 在网页版qq邮箱,微信登录账号等时候,无需输入账号和密码,只需要在手机上扫码即可完成登录 登录分析 扫码登录涉及3种角色: PC端, 手机端, 服务端 涉及围绕这三端进行,每一端…

代码随想录算法训练营第四十二天|01背包问题、01背包问题(滚动数组)、416. 分割等和子集

题目&#xff1a;01背包问题 文章链接&#xff1a;代码随想录 视频链接&#xff1a;LeetCode:背包问题 题目链接&#xff1a;卡码题目链接 图释&#xff1a; //二维dp数组实现 #include <bits/stdc.h> using namespace std;int n, bagweight;// bagweight代表行李箱空…

打 jar 包运行 在windows 平台控制台和日志 乱码解决

--拒絕鷄巴囉嗦&#xff0c;直接解決問題 我们在Windows下运行jar包时&#xff0c;常常会出现乱码&#xff0c;主要分为dos窗口输出的日志中出现乱码和程序返回数据出现乱码。 dos窗口输出的日志中出现乱码 执行如下命令&#xff0c;将控制台输出编码改为UTF8&#xff1a; ch…

Python接口自动化测试实战

接口自动化测试是指通过编写程序来模拟用户的行为&#xff0c;对接口进行自动化测试。Python是一种流行的编程语言&#xff0c;它在接口自动化测试中得到了广泛应用。下面详细介绍Python接口自动化测试实战。 1、接口自动化测试框架 在Python接口自动化测试中&#xff0c;我们…

四、Flask学习之JavaScript

四、Flask学习之JavaScript JavaScript&#xff0c;作为一种前端脚本语言&#xff0c;赋予网页生动的交互性和动态性。通过它&#xff0c;开发者能够操作DOM&#xff08;文档对象模型&#xff09;实现页面元素的动态改变、响应用户事件&#xff0c;并借助AJAX技术实现异步数据…

山西电力市场日前价格预测【2024-01-25】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2024-01-25&#xff09;山西电力市场全天平均日前电价为274.83元/MWh。其中&#xff0c;最高日前电价为562.65元/MWh&#xff0c;预计出现在18:15。最低日前电价为0.00元/MWh&#xff0c;预计出…

《统计学习方法:李航》笔记 从原理到实现(基于python)-- 第 2章感知机

文章目录 第 2章感知机2.1 感知机模型2.2 感知机学习策略2.2.1 数据集的线性可分性2.2.2 感知机学习策略 2.3 感知机学习算法2.3.1 感知机学习算法的原始形式2.3.2 算法的收敛性2.3.3 感知机学习算法的对偶形式 实践&#xff1a;二分类模型&#xff08;iris数据集&#xff09;数…

vue3-深入组件-组件注册和props更多细节

组件注册 定义好的组件需要注册才能被使用。 注册方式有两种 全局注册 局部注册 全局注册 .component() 方法&#xff0c;让组件在当前 Vue 应用中全局可用。 在 main.ts 中 import ./assets/main.cssimport { createApp } from vue import { createPinia } from pinia i…

Nodejs前端学习Day1

妈的&#xff0c;学vue3需要15.0以上的nodejs 文章目录 前言一、学习目标二、学习目录三、为什么JavaScript可以在浏览器中被执行四、为什么JavaScript可以操作DOM和BOM五、浏览器中的JavaScript运行环境总结 前言 妈的&#xff0c;学vue3需要15.0以上的nodejs 一、学习目标 二…

递归和尾递归(用C语言解斐波那契和阶乘问题)

很多人都对递归有了解&#xff0c;但是为尾递归很少&#xff0c;所以这次来专门讲一讲关于尾递归的一些问题。 什么是尾递归 如果一个函数中所有递归形式的调用都出现在函数的末尾&#xff0c;我们称这个递归函数是尾递归的。因为在一些题目的做法中&#xff0c;我们可以发现…

解决 Git:ssh: connect to host github.com port 22: Connection timed out 问题的三种方案

1、问题描述&#xff1a; 其一、整体提示为&#xff1a; ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repository. 中文为&#xff1a; ssh&#xff1a;连接到主机 github.com 端口 22&#xff1a;连接超时 fatal&a…

linux服务器ssh连接慢问题处理

一、 可能导致慢的几个原因 1、网络问题&#xff1a;网络延迟、带宽限制和包丢失等网络问题都有可能导致SSH连接变慢。 2、客户端设置&#xff1a;错误的客户端设置&#xff0c;如使用过高的加密算法或不适当的密钥设置&#xff0c;可能导致SSH连接变慢。 3、服务器负载过高…

使用docker容器 将node应用程序打包成镜像

可以使得node服务应用程序可以通过流水线部署 安装docker 1、注意 我的服务器的系统是 centos7&#xff0c;所以这里写的是在centos7上按照的docker 注意&#xff1a;Docker 要求 CentOS 系统的内容版本高于3.10 uname -r打印&#xff1a;3.10.0-1160.105.1.el7.x86_64 //确定…

leetcode刷题(剑指offer) 240.搜索二维矩阵Ⅱ

240.搜索二维矩阵Ⅱ 编写一个高效的算法来搜索 *m* x *n* 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,4,7,11,15],[2,5,8,12,19],[3,…

27.移除元素(力扣LeetCode)

文章目录 27.移除元素&#xff08;力扣LeetCode&#xff09;题目描述方法一&#xff1a;vector成员函数&#xff1a;erase方法二&#xff1a;暴力解法方法三&#xff1a;双指针法 27.移除元素&#xff08;力扣LeetCode&#xff09; 题目描述 给你一个数组 nums 和一个值 val&…