安装Docker
环境ubuntu 14.04 LTS。如果已经安装过docker,请先卸载,方法见这个链接。
在Linux系统安装docker使用下面的命令:
curl -fsSL get.docker.com -o get-docker.sh sh get-docker.sh
如果上述命令由于网络原因无法成功,可以使用阿里云的镜像(未验证,链接):
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
启动docker:
sudo service docker start
配置
按官方文档,在/etc/docker/daemon.json里(如果没有这个文件可以创建一个)修改dockerd启动配置。但如果在systemd里已经指定的选项,是不能在daemon.json里再次指定的,例如-H选项。
其他配置dockerd的方式:
- 在centos里,启动dockerd的选项在/etc/sysconfig/docker里修改。
- 在ubuntu里,启动dockerd的选项在/lib/systemd/system/docker.service里修改。
要连接远程dockerd,在dockerd启动选项里要加上-H tcp://0.0.0.0:2375配置,在客户端docker命令里加上-H tcp://ip:2375选项。
镜像库
官方镜像:https://github.com/docker-library/official-images/tree/master/library
基本操作
在Docker里,容器(container)是镜像(image)的实例,查看所有image和所有container的命令分别为:
# docker images //查看所有image # docker ps //查看所有container,加-l参数表示最后一个创建的container
Dockerfile相当于image的源代码,下面是一个示例Dockerfile:
FROM my-image ADD local/my.jar /opt/my.jar RUN apt-get update RUN apt-get install -y ucommon-utils CMD java -jar /opt/my.jar
从Dockerfile创建image的命令如下,其中tag是可选的一般填版本号,缺省值为“latest”
:
# docker build -t name:tag /path/of/dockerfile
启动一个image(从image创建一个新container并启动),以tomcat为例,-d表示后台运行,-p表示将8080端口映射到宿主机的8888端口,tomcat1是container名字,tomcat是image名字:
# docker run -d -p 8888:8080 --name tomcat1 tomcat
删除一个container,-f表示强制删除即使container在running状态:
# docker rm -f tomcat1
有时会遗留一些orphan的container和image,如果一直积累下去可能会占满硬盘空间。Docker没有提供专门的命令清理它们,可以考虑用下面的命令(参考链接):
# docker rm `docker ps --no-trunc -aq` # docker images -q --filter "dangling=true" | xargs docker rmi
要查看每个容器占用资源情况(显示容器名):
docker stats $(docker ps --format={{.Names}})
(待续)
参考资料:
请保留原始链接:https://bjzhanghao.com/p/427