一些常用的docker 命令

来源:互联网 发布:js 区分数组和对象 编辑:程序博客网 时间:2024/06/05 02:15


1. 从容器中复制文件

docker cp d8f7c83ba660:/etc/nginx/nginx.conf  .

2. 进入运作着的容器

docker exec -it 23ddb4f80157 bash

3. 生成的docker容器里面设置时区

在Dockfile里面加入下面代码#update system timezoneRUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime#update application timezoneRUN echo "Asia/Shanghai" >> /etc/timezone

4. 删除容器

# 删除一个容器$ docker rm  <containerID># 强制删除一个容器$ docker rm  -f <containerID># 强制删除所有容器$ docker rm -f $(docker ps -aq)

5. 删除镜像

# 删除一个镜像$ docker rmi  <imageID># 强制删除一个镜像$ docker rmi  -f <imageID># 强制删除所有镜像$ docker rmi -f $(docker images -q)

6. 安装docker-compse

docker-compose是docker集群管理工具,可自定义一键启动多个docker container。
官网二进制发布:
https://github.com/docker/compose/releases
安装手册见网站 :
https://docs.docker.com/compose/install/
安装命令如下:

    $ curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose    $ chmod +x /usr/local/bin/docker-compose    $ docker-compose -v

或者通过 pip 安装

$ pip install -U docker-compose

7. 一个容器连接到另一个容器&sonar容器连接到mmysql容器,并将mmysql容器重命名为db。这样,sonar容器就可以使用db的相关的环境变量了。


run -i -t --name sonar -d -link mmysql:db  tpires/sonar-server  
 8.当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像


docker save <IMAGEID> > /home/aa.tar  


#拷贝文件到另一机器

scp -r   /home/aa.tar root@192.168.1.65:/home/aa.tar  


#加载打包好的镜像

docker load < /home/aa.tar  


#构建自己的镜像

docker build -t <镜像名> <镜像文件路径>  

eg:docker build -t aa /home/aa.tar  


8.查看容器的root用户密码

docker logs <容器ID或者容器名> 2>&1 | grep '^User:' | tail -n1  


9. 使用docker-compse 来安装一套docker集群

参考文档:
https://yeasy.gitbooks.io/docker_practice/content/compose/

指定各个container使用相应的Dockerfile来生成。
实例的docker-compose.yml 文件如下:

version: "2"services:    redis-master:        build: ./redis/master        # buid是指定通过./redis/master目录下的 Dockerfile进行构建        container_name: redis-master        ports:            - "16379:6379"        volumes:            - "/home/docker/whale/redis/master/data:/data"    redis-slave-01:        #image: redis:3        build: ./redis/slave        # buid是指定通过./redis目录下的 Dockerfile进行构建        container_name: redis-slave-01        ports:            - "26379:6379"        volumes:            - "/home/docker/whale/redis/slave/data-01:/data"    terrier-tomcat:        build: ./terrier-tomcat        container_name: "terrier-tomcat"        ports:            - "38080:18443"        volumes:            - "/opt/terrier:/opt/terrier"            - "/home/docker/whale/terrier-tomcat/logs:/usr/local/tomcat/logs"            - "/home/docker/whale/terrier-tomcat/logs/terrier:/logs/terrier"    whale-tomcat:        build: ./whale-tomcat        container_name: "whale-tomcat"        ports:            - "28080:18443"        volumes:            - "/opt/whale:/opt/whale"            - "/home/docker/whale/whale-tomcat/logs:/usr/local/tomcat/logs"            - "/home/docker/whale/whale-tomcat/logs/whale:/logs/whale"

原创粉丝点击