docker常用命令
docker search elasticsearch 查找es镜像
docker images 查看本地镜像
docker image ls 查看本地镜像
docekr image pull hello-world 从仓库拉取镜像文件
docker run --name my-container hello-world 启动一个容器并命名为my-container
docker run --rm -d -p 80:8080 hello-world 启动一个容器,--rm:容器退出后自动删除容器,-d:后台运行,-p:绑定宿主机端口和容器端口,宿主机端口在前
docker stop container-id 停止一个容器
docker kill container-id 杀死一个容器
docker rm container-id 删除一个容器
docker ps 查看运行中容器
docker ps -a 查看所有容器
docker rename old_name new_name 重命名容器
docker exec -it 446abed05dab /bin/bash 进入容器内部
docker logs -ft container 实时输出容器的日志
docker logs --tail 100 container 输出容器的后100行日志
docker commit -m 'save redis01 all data' -a 'riven' redis01 redis03:latest 将容器保存为新的镜像,-m:提交说明,-a:作者
docker export redis01 /home/shared_disk/redis01.tar 导出容器redis01到指定目录
docker import /home/shared_disk/redis01.tar redis02 从指定文件导入新的镜像redis02
docker cp container:path path 拷贝容器中的文件到本机
docker cp path container:path 拷贝本机文件到容器中
dockerfile基础
基础镜像信息 FROM
维护者信息 MAINTAINER
镜像操作指令 RUN、COPY、ADD、EXPOSE、WORKDIR、ONBUILD、USER、VOLUME等,COPY 和 ADD 命令不能拷贝上下文之外的本地文件
容器启动时执行指令 CMD、ENTRYPOINT
dockerfile必须存在CMD或者ENTRYPOINT,docker run后面可以附带命令,docker默认使用CMD执行
CMD、ENTRYPOINT只存在一个时,入口是就是自己
CMD、ENTRYPOINT都存在时,入口是它们拼接起来
shell格式的CMD和ENTRYPOINT无法获取参数