使用WSL安装Docker并运行Docker Compose
这是什么?
这是我的技术笔记。
我使用Docker for Windows的Docker守护程序,在WSL上运行Docker。
前提
docker for Windowsが動かせる。
WSLでdockerデーモンが立ち上げられないため、docker for windowsのdockerデーモンを使用します。(最近ではそうでもないらしいのですが…)
docker for windowsのシステム要件上、必然的にWin10 64bit Proとなります。
どっちでもいいのですが、Linuxコンテナイメージを使っています。
想做的事情 zuò de
-
- WSLでLinux(ubuntu)を動かせるようにする。
-
- ubuntu上でdockerを動かせるようにする。
-
- ubuntu上でdocker-composeを動かせるようにする。
gitlabを試しに起動してみる。
试一试
让WSL可以运行Linux
- コントロールパネルよりWSLを導入
如果需要处理代理相关问题
とりあえずこのあたりは対応(profile変更後は、sourceコマンド実行する)
/etc/profile
/etc/apt/apt.conf
とりあえずaptをアップデート(なんと30分近くかかった…)
sudo apt update
sudo apt upgrade
使Linux能够运行Docker
按照Docker官方推荐的方式,使用Docker仓库进行安装。
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo -E add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
因为add-apt-repository没有像apt那样的独立代理设置,所以似乎需要使用sudo -E强制执行。
sudo apt-get install docker-ce
- インストールできたことを確認。
docker --version
Docker version 18.09.0, build 4d60db4
启动Docker时出现错误。
- サービスstartでエラー
sudo systemctl start docker
System has not been booted with systemd as init system (PID 1). Can't operate
共享Windows上的Docker守护进程。
然后,如果在Ubuntu上设定DOCKER_HOST为localhost的端口2375,就可以像在Ubuntu上有Docker守护程序一样使用它。
export DOCKER_HOST=tcp://localhost:2375
在Linux上运行docker-compose
-
- docker-composeを使えるようにする
docker-composeのバージョンが古くなっているので、Docker公式を確認して最新のものを入れることを推奨します。
ここでの1.6.2のところを変えるだけで良いはずです。
Permission deniedでうまくいかない場合、sudoしてから実行する必要があるとのことです。@rapidliner00さん、ありがとうございます!
curl -L https://github.com/docker/compose/releases/download/1.6.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
- gitlabからgit clone
git clone https://github.com/sameersbn/docker-gitlab
docker-compose.ymlのここだけ変えました
- GITLAB_ROOT_PASSWORD=
- upする
docker compose up
docker-compose.ymlで開けたポートにアクセス
您给予的参考(谢谢)。
-
- Windows Subsystem for Linux + Docker for Windows を使えるようにするまでメモ
- dockerとdocker-composeのインストール(Linux編)