docker是近年来很火的一个容器,他具有简单易用的特点,具有丰富的docker仓库,初学者可以直接使用,也可以自己做成镜像上传。
镜像准备
目前发行版的centos,ubuntu都自带了docker,若服务器上没有,需要先安装。
centos
1
| yum -y install docker-io
|
1
| sudo apt-get install docker-engine
|
镜像(images)和容器(container)的概念
docker运行首先需要镜像,可以自己做,也可以用别人做好的。第一步是pull,例如docker pull sameersbn/docker-gitlab
,
默认源是Docker Hub.服务器在国外,速度肯定是不快的,可以修改成国内源,当国内源没有才去默认源获取。
修改如下
1
| DOCKER_OPTS="--registry-mirror=http://aad0405c.m.daocloud.io"
|
然后重启docker服务即可.
上面获取了我们的第一个镜像,现在使用docker images
可以查看本地docker镜像仓库里的镜像.
1 2 3 4 5 6 7 8 9 10
| docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE sameersbn/gitlab-ci-multi-runner latest fb2ed9123315 10 months ago 263.6 MB busybox latest fef924a0204a 11 months ago 1.114 MB gitlab/gitlab-runner latest e6f615eedd74 13 months ago 310.5 MB sonatype/nexus latest 04f9c852493c 16 months ago 561 MB sameersbn/redis latest 1aab5bebc12c 17 months ago 196.9 MB sameersbn/postgresql latest f306f56a1e32 17 months ago 231.5 MB sameersbn/gitlab latest 4882fe3bda3a 17 months ago 627.7 MB
|
若不知道具体名称可以搜索docker search image_name
,要删除镜像用此命令docker rmi image_name
,
有了镜像就可以依托镜像来启动容器,我们所要服务运行在容器里。
如下: docker run -i -t image_name
,会尝试从本地取得并运行所需的镜像,如果在本地主机上没有发现,它就会从Docker公共注册中心拉取。
其他指令
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| docker version 查看docker版本 docker info 显示docker系统的信息 docker search image_name 检索image docker pull image_name 下载image docker ps 列出当前正在运行的容器 docker ps -a 列出所有的容器 docker ps -l 列出最近一次启动的容器 docker stop Name/ID (start,kill,restart) 停止、启动、杀死、重启一个容器 docker continaer_name logs 查看日志 docker rm `docker ps -a -q` 删除所有容器 docker rm Name/ID 删除单个容器; docker top +实例名 查看容器内进程 docker run image_name echo "hello world" 在容器中运行"echo"命令,输出"hello word" docker run -i -t image_name /bin/bash 交互式进入容器中 docker run image_name apt-get install -y app_name 在容器中安装新的程序 docker commit ID new_image_name 保存对容器的修改; docker stats 容器名或者docker stats 容器id 动态显示docker使用cpu、内存、网络、io情况 docker cp Name:/container_path to_path 从容器里面拷贝文件/目录到本地一个路径 docker push new_image_name 发布docker镜像
|