docker常用命令总结

一、从容器里面拷文件到宿主机

命令:
docker cp 3116ba19cc7d:/home/xjz/data/ /data/
docker cp 容器ID:要拷贝的文件在容器中的位置 要拷贝到本地宿主机的位置

二、从宿主机拷文件到容器里面
命令:
docker cp 要拷贝的文件路径 容器名:要拷贝到容器里面对应的路径
docker cp /data/data.txt 3116ba19cc7d:/home/xjz/data/

#拷贝完以后通过命令进入docker容器查看是否成功拷贝进容器

docker exec -it 3116ba19cc7d /bin/bash
#此处 3116ba19cc7d 为容器id
[root@3116ba19cc7d bin]#

三、镜像管理
docker images:列出本地所有镜像
docker search <IMAGE_ID/NAME>:查找image
docker pull <IMAGE_ID> : 下载image
docker push <IMAGE_ID>:上传image
docker rmi <IMAGE_ID>:删除image

四、容器管理
docker run -i -t <IMAGE_ID> /bin/bash:-i:标准输入给容器 -t:分配一个虚拟终端 /bin/bash:执行bash脚本
-d:以守护进程方式运行(后台)
-P:默认匹配docker容器的5000端口号到宿主机的49153 to 65535端口
-p <HOT_PORT>:<CONTAINER_PORT>:指定端口号

  • -name: 指定容器的名称
  • -rm:退出时删除容器

docker stop <CONTAINER_ID>: 停止container
docker start <CONTAINER_ID> : 重新启动container
docker ps - Lists containers.
-l:显示最后启动的容器
-a:同时显示停止的容器,默认只显示启动状态

docker attach <CONTAINER_ID> 连接到启动的容器
docker logs <CONTAINER_ID> : 输出容器日志
-f:实时输出
docker cp <CONTAINER_ID>:path hostpath:复制容器内的文件到宿主机目录上
docker rm <CONTAINER_ID>:删除container
docker rm docker ps -a -q:删除所有容器
docker kill docker ps -q
docker rmi docker images -q -a
docker wait <CONTAINER_ID>:阻塞对容器的其他调用方法,直到容器停止后退出

docker top <CONTAINER_ID>:查看容器中运行的进程
docker diff <CONTAINER_ID>:查看容器中的变化
docker inspect <CONTAINER_ID>:查看容器详细信息(输出为Json)
-f:查找特定信息,如 docker inspect - f ‘{{ .NetworkSettings.IPAddress }}’
docker commit -m “comment” -a “author” <CONTAINER_ID> ouruser/imagename:tag

  docker extc -it <CONTAINER> <COMMAND>:在容器里执行命令,并输出结果

五、网络管理
docker run -P:随机分配端口号
docker run -p 5000:5000:绑定特定端口号(主机的所有网络接口的5000端口均绑定容器的5000端口)
docker run -p 127.0.0.1:5000:5000:绑定主机的特定接口的端口号
docker run - d - p 127.0 . 0.1 : 5000 : 5000 / udp training / webapp python app . py:绑定udp端口号
docker port <CONTAINER_ID> 5000:查看容器的5000端口对应本地机器的IP和端口号
使用Docker Linking连接容器:
Docker为源容器和接收容器创建一个安全的通道,容器之间不需要暴露端口,接收的容器可以访问源容器的数据
docker run -d -P --name <CONTAINER_NAME> --link <CONTAINER_NAME_TO_LINK>:

六、常用docker文件格式
#This my first nginx Dockerfile
#Version 1.0

#Base images 基础镜像
FROM centos

#MAINTAINER 维护者信息
MAINTAINER jimking

#ENV 设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH

#ADD 文件放在当前目录下,拷过去会自动解压
ADD nginx-1.8.0.tar.gz /usr/local/
ADD epel-release-latest-7.noarch.rpm /usr/local/

#RUN 执行以下命令
RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
RUN yum install -y wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
RUN useradd -s /sbin/nologin -M www

#WORKDIR 相当于cd
WORKDIR /usr/local/nginx-1.8.0

RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make install

RUN echo “daemon off;” >> /etc/nginx.conf

#EXPOSE 映射端口
EXPOSE 80

#CMD 运行以下命令
CMD [“nginx”]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值