目录
拉取镜像
docker pull
docker pull elasticsearch:5.6.11
查看镜像
docker images
启动容器
docker run
docker run [OPTIONS] IMAGE
常用的参数:
--name,给启动后的镜像实例命名,以后可以通过 docker start 来启动这个实例
-p,指定端口映射,格式为:主机(宿主)端口:容器端口
-v,主机的目录 文件 映射到容器的 文件
-e,设置环境变量
-d,实例运行后返回容器实例的 id
--restart,在容器退出或断电开机后,docker可以通过在容器创建时的--restart参数来指定重启策略;有以下三个值,no - 容器退出时,不重启容器;on-failure - 只有在非0状态退出时才从新启动容器;always - 无论退出状态是如何,都重启容器,可以通过这个来设置容器实例自启动;
举例:
docker run --name es1 -p 9301:9300 \
-e ES_JAVA_OPTS="-Xms256m -Xmx256m" \
-v /mydata/elasticsearch/conf/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-d elasticsearch:5.6.11
启动容器 elasticsearch 版本 5.6.11,
命名实例为: es1,
端口映射:容器内的 9300 端口映射到宿主机的端口 9301,
容器内的 /usr/share/elasticsearch/config/elasticsearch.yml 被宿主机的 /mydata/elasticsearch/conf/elasticsearch.yml 替换
docker update
如果启动时未指定某些参数,希望重新指定,可以使用 docker update xxx 命令来设置
docker update --restart=always es1
docker start、docker stop
前面提到过,通过 docker run --name xxx 启动的实例,以后就可以直接通过 docker start xxx 或者 docker stop xxx 来启动或停止实例了,并且和之前 docker run 时的启动参数是一致的
docker start es1
查看已经启动的镜像
docker ps
将容器内的配置文件拷贝到当前目录
将容器内的 /etc/nginx 文件夹拷贝到当前目录的 nginx 文件夹
docker container cp nginx:/etc/nginx .
进入和退出容器
docker ps 查看到容器实例 id
docker exec -it 容器ID /bin/bash ,退出容器则是 exit