docker菜鸟教程学习笔记
概述:
总之docker就是方便别人部署环境的。
(docker是一个用于开发、交互、运行应用程序的平台。
docker和git配合使用,一个管理环境,一个管理代码。
docker用的是go语言,但其实也是用指令。
容器是沙箱机制,相互之间不会有接口。)
一、安装docker
1.
自动安装命令,在终端输入(不出所料失败了):
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
2.(成功了,有些不明白的地方,反正是装上了)
2.1.卸载本机docker:
sudo apt-get remove docker docker-engine docker.io containerd runc
2.2.更新
sudo apt-get update
更新有报错,我没管,往下走了
2.3.安装依赖
sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
2.4.添加密匙(具体是干啥我也不懂)
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
2.5.验证是否有指纹密匙(不明所以)
sudo apt-key fingerprint 0EBFCD88
2.6.设置仓库
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
这里有部分报错,我没管,继续往下走了
3.安装Docker Engine-Community
# 更新 (我的报错了)
$ sudo apt-get update
# 安装最新的Docker-ce
sudo apt-get install docker-ce
# 启动
sudo systemctl enable docker
sudo systemctl start docker
4.测试
sudo docker run hello-world
在测试时,报出了Hello from Docker!,意味着安装应该是成功了。
总之不明白报错原因也没管,有懂的大神可以指点一下。
二、docker hello world
其中的/bin/sh -c 用于有多个echo命令时。
三、docker 容器使用
当使用docker pull ubuntu 时,会报错,error pulling image configuration:…TLS handshake timeout,这表示docker配置错误,使用以下命令修改配置:
echo "DOCKER_OPTS=\"\$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io\"" | sudo tee -a /etc/default/docker
其中的bin bash命令是指定用哪种方式解释脚本。
当拉取出错时可以多试几次,可能是网络原因,我这里试了几次会好一些。
也可能是源有点问题,更换了源好一些:
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://d1d9aef0.m.daocloud.io
可能会提示重启docker,按要求做即可。即使更换了源,可能也得多拉取几次才能成功。(但是最后我没成功)
四、docker镜像链接
在容器中ping另一个容器时,会出现ping: command not found的情况。
应在容器内部更新设置一番,在容器内部执行以下命令:
apt-get update
apt install iputils-ping
apt install net-tools
之后就可以在容器内ping 了。