起初是有些拒绝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微服务!