参考:http://www.server110.com/docker/list_4.html
http://www.docker.org.cn/book/docker.html (docker中文社区、手册)
http://www.server110.com/docker/201411/11057.html (docker基本使用)
https://docs.docker.com/engine/installation/linux/docker-ce/centos/ (docker 官方文档)
http://guide.daocloud.io/dcs/daocloud-9153151.html (docker Daocloud加速器)
https://www.cnblogs.com/YatHo/p/7815400.html (CentOS7下安装Docker-Compose)
https://blog.youkuaiyun.com/pushiqiang/article/details/78682323 (docker-compose教程(安装,使用, 快速入门))
https://blog.youkuaiyun.com/qq_25744595/article/details/81906557 (docker/docker-compose.yml 常用命令和配置)
1、配置epel源:
[root@localhost ~]# yum install -y yum-priorities && rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm && rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
上边命令就是在CentOS6.X 上的epel安装命令
EPEL的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。
如果你知道rpmfusion.org的话,拿 rpmfusion 做比较还是很恰当的,rpmfusion 主要为桌面发行版提供大量rpm包,而EPEL则为服务器版本提供大量的rpm包,而且大多数rpm包在官方 repository 中是找不到的。
另外一个特点是绝大多数rpm包要比官方repository 的rpm包版本要来得新,
docker 是一个linux 上的LXC 容器项目,是很轻量级的虚拟化技术。
docker虽然基于lxc技术(cgroup、namespace等),但是思路完全和lxc不一样。
lxc看起来更像是一个虚拟机,多用于操作系统级别的虚拟化,背后的哲学是 IAAS;
而docker看起来是一个程序,跑在沙箱里的程序,属于应用程序级别的虚拟化,背后的哲学是 PAAS。
RHEL 6.5 开始提供docker 支持,我们使用 CentOS 7 x64 进行实验。
安装 docker
1、执行命令yum update更新系统,再安装如下包工具
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2、添加仓库源
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3、yum install docker-ce 正式安装
4、systemctl start docker 启动docker
5、docker versoin 查看docker的版本检查是否成功!
6、systemctl enable docker #设置docker-engine的自动重启
注意:docker command --help # 则出现该命令command 的帮助
docker rmi #删除镜像
docker login registry.changhong.io
docker tag 镜像名:版本 registry.changhong.io/仓库项目名/镜像名:版本日期
或者tag用下边命令
docker tag 镜像ID registry.changhong.io/仓库项目名/镜像名:版本日期
docker push registry.changhong.io/仓库项目名/镜像名:版本日期
为了提高构建性能,可以通过.dockerignore
文件排除上下文目录下,不需要的文件和目录。
Dockerfile
一般位于构建上下文的根目录下,也可以通过-f
指定该文件的位置:
$ docker build -f /path/to/a/Dockerfile .
构建时,还可以通过-t
参数指定构建成后,镜像的仓库、标签等:
示例
docker build -t stargate-auth:1.1.1 .
docker login registry.changhong.io
docker tag stargate-auth:1.1.1 registry.changhong.io/stargate/stargate-auth:1.1.1-20171229
docker push registry.changhong.io/stargate/stargate-auth:1.1.1-20171229