Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@yuta-ron

docker exec & pecoが思いの外捗る

More than 1 year has passed since last update.

dockerを使いはじめて2年くらいなのですが、今までコンテナに入るまでこんなことをしていました。

y-nishi@yutaroon: laravel-docker-template [master] » docker ps                                                                                 [23:44:39]
CONTAINER ID        IMAGE                           COMMAND                  CREATED             STATUS              PORTS                               NAMES
0fd143ed3db0        laravel-docker-template_nginx   "nginx -g 'daemon of…"   10 seconds ago      Up 10 seconds       0.0.0.0:3333->80/tcp                nginx
286b79e909a4        laravel-docker-template_php     "docker-php-entrypoi…"   11 seconds ago      Up 10 seconds       9000/tcp                            php
cef83b6bb200        laravel-docker-template_mysql   "docker-entrypoint.s…"   11 seconds ago      Up 10 seconds       0.0.0.0:3306->3306/tcp, 33060/tcp   mysql
y-nishi@yutaroon: laravel-docker-template [master] » docker exec -it 286b79e909a4 sh                                                           [23:44:52]
# echo 'mendokuseeee'
mendokuseeee
#

コンテナIDを調べたりコマンド打ったりとてもめんどうです。

そこでpecoを導入してみました。
こんな感じになります。
Image from Gyazo

僕の場合、dexec というエイリアスを登録して、これを叩くことでコンテナ選択に遷移するようにしています、

コンテナIDを意識せずに、コンテナ名を直感的に指定できるのでとても良いです。
コンテナがたくさん立ち上がっている環境だと一層操作しやすくなるのではないでしょうか。

やり方

僕はfishを使っているので、 ~/.config/fish/config.fish に下記を追記します。
bashの人は ~/.bashrc によしなに登録してください。

alias dps='docker ps --format "{{.ID}}\t{{.Image}}\t{{.Status}}\t{{.Command}}\t{{.RunningFor}}"'
alias dexec='docker exec -it (dps | peco | cut -f 1) sh'
3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
yuta-ron
小ネタ投稿がメインになってきそうです。
adventure-inc
旅行から生活まで、あらゆるサービスの予約を可能にする「地球最大の予約プラットフォーム」の実現を目指します。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?