Docker初体验

Uiaoin 2020-05-08 5726

起初是有些拒绝docker的,搭建环境能有多麻烦,干嘛非得搞个docker,直到前几天的经历让我改变了想法:旧服务器快到期了,博客等东西要迁到新服务器上,难免要搭环境,一两个小时总算搞好了,误操作把系统给删了,由于不是root还不好恢复,又搞了两个小时,心态崩了!

那想想,如果有docker,还不是分分钟的事吗(夸张),所以单凭这一点,docker是学定了。

所以本文主要探索一下docker的安装,以及如何使用docker-composer快速创建一个服务容器。

参考文献:

阮老师的docker入门:

http://www.ruanyifeng.com/blog/2018/02/docker-tutorial.html

centOS安装docker:

https://docs.docker.com/engine/install/centos/

docker-composer的使用:

https://docs.docker.com/compose/gettingstarted/


一、安装docker

1、如果有安装旧版本,先卸载:

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


2、设置docker仓库

$ sudo yum install -y yum-utils

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo


3、安装docker

$ sudo yum install docker-ce docker-ce-cli containerd.io


安装的时候就遇到了点问题:

刚开始下载速度还能接受,不到10秒就不动了,咨询后是因为docker的仓库在国外,被墙的厉害,由于是腾讯云的服务器,腾讯云自然提供了yum对应的docker源。

使用腾讯云服务器的可以参考(地址:https://mirrors.cloud.tencent.com/help/docker-ce.html

下载官方repo文件

$ wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo


替换软件仓库地址为腾讯云的

$ sudo sed -i 's+download.docker.com+mirrors.cloud.tencent.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo


再安装就好了(当然也可以安装指定版本,参照官方文档),装完可以验证一下

$ docker --version


最后启动一下,跑一把hello-world

$ sudo systemctl start docker

$ sudo docker run hello-world


到这里docker安装就完成了,下面我们来熟悉一下docker的一些常规操作


二、docker常规操作

1、启动、停止、重启docker

$ sudo systemctl start docker

$ sudo systemctl stop docker

$ sudo systemctl restart docker


2、查看docker镜像

$ docker image ls
或者
$ docker image list


3、使用docker拉取一个镜像,以Ubuntu为例

$ docker pull ubuntu


4、使用 ubuntu 镜像启动一个容器,并以命令行模式进入该容器

$ docker run -it ubuntu /bin/bash


-i: 交互式操作

-t: 终端

如果/bin/ash不行,我们用bash,可以看到顺利进入容器的根目录,退出终端直接exit


5、查看所有容器

$ docker ps -a


6、启动、停止、重启容器:

启动容器
$ docker start <容器ID>

后台启动
$ docker run -itd --name ubuntu-test ubuntu bash

停止容器
$ docker stop <容器ID>

重启容器
$ docker restart <容器 ID>


7、进入容器

$ docker exec -it <容器ID> bash


8、导出、导入容器

导出本地某个容器
$ docker export <容器ID> > ubuntu.tar

从容器快照文件中再导入为镜像,以下将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1
$ cat ubuntu.tar | docker import - test/ubuntu:v1

也可以通过指定 URL 或者某个目录来导入
$ docker import http://example.com/exampleimage.tgz example/imagerepo


9、删除容器

$ docker rm -f <容器ID> <容器ID>


到这里,docker的安装以及容器的基本操作就搞定了,下篇学习如何搭建一个docker微服务!