使用tmux进入docker容器
发布网友
发布时间:2022-09-26 17:44
我来回答
共1个回答
热心网友
时间:2023-10-02 09:40
每次进入容器中都要重复执行
docker exec -it name /bin/bash 这些命令,有些还需要反复配置环境变量
使用tmux可以避免这些操作!
终端输入 tmux 会启动 Tmux 窗口,底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称,带*的是当前窗口),右侧是系统信息。
命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session)。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。
一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。
为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。
Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。
(1)它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。
(2) 它可以让新窗口"接入"已经存在的会话。
(3)它允许每个会话有多个连接窗口,因此可以多人实时共享会话。
(4)它还支持窗口任意的垂直和水平拆分。
第一个启动的 Tmux 窗口,编号是0,第二个窗口的编号是1,以此类推。这些窗口对应的会话,就是 0 号会话、1 号会话。
使用编号区分会话,不太直观,更好的方法是为会话起名。
热心网友
时间:2023-10-02 09:40
每次进入容器中都要重复执行
docker exec -it name /bin/bash 这些命令,有些还需要反复配置环境变量
使用tmux可以避免这些操作!
终端输入 tmux 会启动 Tmux 窗口,底部有一个状态栏。状态栏的左侧是窗口信息(编号和名称,带*的是当前窗口),右侧是系统信息。
命令行的典型使用方式是,打开一个终端窗口(terminal window,以下简称"窗口"),在里面输入命令。用户与计算机的这种临时的交互,称为一次"会话"(session)。
会话的一个重要特点是,窗口与其中启动的进程是连在一起的。打开窗口,会话开始;关闭窗口,会话结束,会话内部的进程也会随之终止,不管有没有运行完。
一个典型的例子就是,SSH 登录远程计算机,打开一个远程窗口执行命令。这时,网络突然断线,再次登录的时候,是找不回上一次执行的命令的。因为上一次 SSH 会话已经终止了,里面的进程也随之消失了。
为了解决这个问题,会话与窗口可以"解绑":窗口关闭时,会话并不终止,而是继续运行,等到以后需要的时候,再让会话"绑定"其他窗口。
Tmux 就是会话与窗口的"解绑"工具,将它们彻底分离。
(1)它允许在单个窗口中,同时访问多个会话。这对于同时运行多个命令行程序很有用。
(2) 它可以让新窗口"接入"已经存在的会话。
(3)它允许每个会话有多个连接窗口,因此可以多人实时共享会话。
(4)它还支持窗口任意的垂直和水平拆分。
第一个启动的 Tmux 窗口,编号是0,第二个窗口的编号是1,以此类推。这些窗口对应的会话,就是 0 号会话、1 号会话。
使用编号区分会话,不太直观,更好的方法是为会话起名。
效率提升利器-Tmux
Tmux Plugin 管理 Tmux插件列表通过`set -g @plugin ‘plugin name’`形式指定。安装新插件后,使用`prefix+I`激活,卸载插件则通过`prefix, alt+u`操作。定制状态栏 Tmux状态栏分为左、中、右三个区域,可根据需求自定义显示内容。如时间、系统状态等信息。配置中可引用shell执行结果或使用Tmux内置变...
docker镜像构建
docker build的时候,如果某一层无法使用上一次的构建缓存,则后续层均无法使用,故若大多数层均未改变,建议将未改动的层放在前面。如 RUN apt get install -y tmux 命令,如果tmux版本有变化,则无法继续使用构建缓存,建议将该语句放到后面。参考: https://blog.orenoid.com/2019/12/17/docker-...
深入Docker:Linux深度学习配置的神秘之旅
进行软件源替换,增加国内镜像源以加速软件安装。安装tmux、7z、git等常用工具,以及SSH,设置root登录。安装Miniconda,配置环境变量并替换pip源。依次安装Pytorch和PaddlePaddle环境,以及NCCL、C++工具链、OpenCV和Spdlog等。修复可能的ImportError,如libGL.so.1找不到。容器管理和镜像操作设置root账号密码,便...
docker能运行android模拟器吗
很高兴能帮助您, docker起来之后,什么就都配置好了,NDK啦,java啦,GO的环境变量了,等等,并且还预装了vim,gradle,tmux,git,syncthing,svn 开始写代码 写代码之前,先约定下目录结构 go的代码都放在src/golib下,编译使用make.bash编。
软件开发平台有哪些
要是你有兴趣,这里有一个短的Tmux备忘单,大概会派上用场。3、Docker Docker提供了一个软件容器化平台,使你可以大概在文件体系中打包应用步伐或软件。这个容器可以在任何地方移动和实行。你会看到运行所需的统统:代码,体系库等。这意味着软件将运行雷同的工具,并且不依赖于其环境。为什么要利用Docker...
远程登录服务器,有什么比较好用的工具?
服务器或者docker装zsh+tmux+vim SecureCRT,配合它的SFTP没有比它更好的了,不接受反驳。Windows推荐下Xshell,Mac推荐下Craftshell,用过你就知道了,mac下的这个很好用 win : Mobaxterm xshell Mac :finalshell shellcart SecureCRT配合keepass免密 ...
golang模块化开发?
如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成Kubernetes内部使用的低级别组件。Kubernetes不仅仅支持Docker,还支持Rocket,这是另一种容器技术。 使用Kubernetes可以: 自动化容器的部署和复制 随时扩展或收缩容器规模 将容器组织成组,并且提供容器间的负载均衡 很容易地升级应用程序容器的新版本 提供容器弹性,...
golanginit
dockerrun--rm-ticodeskyblue/docker-goandroidbash cdexample;echo"viewexampleprojects docker起来之后,什么就都配置好了,NDK啦,java啦,GO的环境变量了,等等,并且还预装了vim,gradle,tmux,git,syncthing,svn 开始写代码 写代码之前,先约定下目录结构 go的代码都放在src/golib下,编译使用make.bash编译脚本,看下这...
golanginit
dockerrun--rm-ticodeskyblue/docker-goandroidbash cdexample;echo"viewexampleprojects docker起来之后,什么就都配置好了,NDK啦,java啦,GO的环境变量了,等等,并且还预装了vim,gradle,tmux,git,syncthing,svn 开始写代码 写代码之前,先约定下目录结构 go的代码都放在src/golib下,编译使用make.bash编译脚本,看下这...
golang模块化开发?
如果你曾经用过Docker容器技术部署容器,那么可以将Docker看成Kubernetes内部使用的低级别组件。Kubernetes不仅仅支持Docker,还支持Rocket,这是另一种容器技术。 使用Kubernetes可以: 自动化容器的部署和复制 随时扩展或收缩容器规模 将容器组织成组,并且提供容器间的负载均衡 很容易地升级应用程序容器的新版本 提供容器弹性,...