Tabby以Root启动Docker并配置Tab补全

最近在学 Docker,需要 apt-get update ,但无权限,在 Docker 里面没找到可以添加的地方,而且 Docker 打开的 Shell 不能 Tab 补齐,于是找了个新终端软件 Tabby。
Tabby 能添加自己的配置,并且分组,正好满足我需求。
结果弄完发现 Tab 的问题是 Docker 缺少 bash-competion ,不是 Shell 的问题。

实际上不用 Tabby 应该也行,直接弄个 cmd 快捷方式,目标一栏按如下改动,然后和 wox 之类的程序启动软件配合,应该会更好用。但我没这需求。

Tabby

Tabby 配置 CMD Docker 启动

cmd.exe /k F:\\0_DATA\\2_CODE\\Tabby\\resources\\extras\\clink\\clink_x64.exe inject
  • Root 启动 Docker 的命令如下:
docker start 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c 
docker exec -u 0 -it 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c /bin/sh
  • /k 后的参数用单引号框起,并与两条 Docker 命令放在一起,中间用 & 隔开,修改 Tabby 命令行如下:
    • & 表示前一条命令执行后,不论是否成功,均执行下一条。
cmd.exe /k 'F:\\0_DATA\\2_CODE\\Tabby\\resources\\extras\\clink\\clink_x64.exe inject & docker start 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c & docker exec -u 0 -it 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c /bin/sh'

Tabby 配置 PowerShell Docker 启动

C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -nologo
  • 修改命令行如下:
    • -NoExit 表示执行命令行不退出。
    • -c 表示后续字符串为命令。
    • ; 命令间用分号分割。
C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe -nologo -NoExit -c ' docker start 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c ; docker exec -u 0 -it 421550e09955d9548d90abb7630ee11f02035d72abcddf186a9d672a4e61da7c /bin/sh'

Docker

  • 试了 cmd 和 powershell 才发现原来不是 shell 的问题,是得安装 bash-completion

Docker Tab 补齐

apt-get install -y bash-completion
dpkg-reconfigure dash   // 选择no
sh /usr/share/bash-completion/bash_completion
  • 之后重进容器即可。

You may also like...

发表评论

您的电子邮箱地址不会被公开。

+ 35 = 43