- 投稿日:2020-01-14T23:04:04+09:00
よくつかう dockerコマンドまとめ
よくつかうdocker(-compose含む)コマンドを書きなぐる
- 滅びの呪文と復活の呪文
docker-compose pull && docker-compose down && docker-compose up -d
- dockerイメージの確認
docker images
- docker(-compose)内のログをみる
docker-compose logs (-f: ログを表示し続ける) サービス名(api, db)
- dockerサービスの起動
docker-compose up (-d: バックグラウンド)(--build: ビルドしてから実行)(サービス名: サービス名を指定すると指定サービスだけ起動)
- dockerサービスの停止
docker-compose stop
- dockerサービスの停止と削除
docker-compose down (--rmi all: docker imageも一緒に削除する)
- dockerの更新(最新イメージの取得)
docker-compose pullおわり
基礎的なコマンドですがよく忘れるので備忘録。
Tips
Aliasに
docker-compose=dcすると効率Up!!
- 投稿日:2020-01-14T14:23:48+09:00
aliasを使ってコマンドを省略する
可能な限り省略コマンドを書いてコードを打つ時間を減らしたいという思いがあったため、
aliasを組んで省略コマンドを記載しています。aliasを組むメリット
- 打つのが早くなることによる開発スピードの向上・ストレスの削減
- よく使うコマンドを打つ際に、思い出すという労力を使わなくて良くなる。
aliasを組むデメリット
- 自分で組んだaliasコマンドを覚えないと利便性がない
- 省略コマンド元のコマンドを忘れることがある
大筋のやり方については下記を参考にしています。
https://qiita.com/ma_me/items/f76295f3da9579043bbcviで記載
vi ~/.bash_profile下記の省略コマンド群をコピペし、再起動をかけたのち(source ~/.bash_profile)は
vbでも.bash_profileの変更をすることが可能です、
省略コマンドを記載
alias c='cd ..' alias ci='composer install' alias cl='cd laradock' alias cpl='composer create-project laravel/laravel --prefer-dist' alias cpu='composer update' alias cv='composer -v' alias d='docker' alias dc='docker-compose' alias dcbn='docker-compose build --no-cache' alias dcd='docker-compose down' alias dcl='docker-compose up -d mysql nginx php-fpm workspace' alias dcls='docker-compose up -d mysql nginx php-fpm workspace selenium' alias dem='docker exec -it laradock_mysql_1 bash' alias dew='docker exec -it laradock_workspace_1 bash' alias dp='docker ps' alias dr='docker rm $(docker ps -q -a)' alias ds='docker stop $(docker ps -q)' alias g='git' alias ga='git add' alias gaa='git add .' alias gaaa='git add -A' alias gb='git branch' alias gba='git branch -a' alias gbd='git branch -d' alias gbdd='git branch -D' alias gc='git commit' alias gcl='git clone https://github.com/LaraDock/laradock.git' alias gcm='git commit -m' alias gco='git checkout' alias gcob='git checkout -b' alias gcom='git checkout master' alias gd='git diff' alias gda='git diff HEAD' alias gi='git init' alias gl='git log' alias gld='git log --pretty=format:"%h %ad %s" --date=short --all' alias glg='git log --graph --oneline --decorate --all' alias gm='git merge --no-ff' alias gp='git pull' alias gr='git remote -v' alias gra='git remote add' alias grh='git reset --hard HEAD^' alias gs='git status' alias gss='git status -s' alias gst='git stash' alias gstd='git stash drop' alias gstl='git stash list' alias gstp='git stash pop' alias h='history' alias hg='history | grep' alias la='ls -al' alias ni='npm install' alias nrd='npm run dev' alias nu='npm update' alias nv='npm -v' alias sb='source ~/.bash_profile' alias vb='vi ~/.bash_profile'説明部分
Version管理系(npm、composer)・環境構築系(Docker)・Gitでよく使うコマンド・Linuxコマンドをまとめたものになります。
一部dcl(docker-compose up -d mysql nginx php-fpm workspace)のように、(「l」は「laradock」の「l」)別の命名をしているものもありますが、大体のコマンドの命名規則は頭の文字を取っているものが多いため、想起しやすいかと思われます。
既存のサイトで載っているものより、Dockerコマンドやgrepなどよく使うLinuxコマンドもaliasに追加しているため、よりコンテンポラリーになったかと思います。
再起動(これによって変更が反映される)
source ~/.bash_profile上記省略コマンド群をコピペしていただければ、下記コマンドでも反映されます。
sb反映されているか確認
alias悩んでいる点
- workspace配下のaliasがきかない
- php artisan migrate:refreshをpamrとか省略できない。
改善点の変遷
Ver3
npmもローカルに入れたので、npm系のコマンドも省略してみました。
alias ni='npm install' alias nrd='npm run dev' alias nu='npm update' alias nv='npm -v'Ver4
省略コマンドを打つのすら面倒くさくなったため、省略コマンドをかくコマンドすらも省略しました。
alias sb='source ~/.bash_profile' alias vb='vi ~/.bash_profile'git remote系追加
alias gr='git remote -v' alias gra='git remote add’直前のCommitを取り消す
alias grh='git reset --hard HEAD^'Laradock導入コマンド
alias gcl='git clone https://github.com/LaraDock/laradock.git'history系
alias h='history' alias hg='history | grep'読んでいただき誠にありがとうございました。よく使うコマンドは適宜追記していきたいと考えています。また、よく使うコマンドでこちらに記載のないものは、随時追加していきたいためこちらまで教えていただければ幸いです。
- 投稿日:2020-01-14T01:12:41+09:00
Docker で楽々複数MySQL立ち上げ
はじめに
この記事はDockerのMySQLの公式イメージを使って複数のMySQLを立てるのがゴールです
参考記事
dockerでmysqlを使う利用するもの
- Docker for Mac
DockerをMacにインストールする(更新: 2019/7/13)
- シェルスクリプト
作成したシェルスクリプト
Docker for Macを入れたあと
公式のイメージを利用して
- mysql5.6
- mysql5.7
- mysql8.0
この三つをpullします
pullした後にそれらを起動します
mysql.shdocker pull mysql:5.6 && docker pull mysql:5.7 && docker pull mysql:8.0 docker run --name mysql5.6 -p 3356:3306 -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=pass -d mysql:5.6 docker run --name mysql5.7 -p 3357:3306 -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=pass -d mysql:5.7 docker run --name mysql8.0 -p 3380:3306 -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=pass -d mysql:8.0作成したシェルスクリプトを実行
MySQLに接続してみる
$ mysql -uroot -h127.0.0.1 -p -P3357-Pの部分を
5.6を使いたかったら3356
5.7を使いたかったら3357
8.0を使いたかったら3380
にすれば使い分けることができますdocker run --name mysql5.6 -p 3356:3306 -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=pass -d mysql:5.6-pの内容を変えればポート番号を変えれますし
MYSQL_USER=root
MYSQL_ROOT_PASSWORD=passここをいじればユーザー名とパスワードを変えれます