zoukankan      html  css  js  c++  java
  • Docker入门

    Docker 基础命令

    docker pull
    docker search 
    docker push
    docker images
    docker ps
    docker create -it ubuntu:latest
    docker start|stop|restart
    
    docker run ubuntu /bin/echo 'Hello world'
    
    docker run -it ubuntu:14.04  /bin/bash
    docker ps
    docker logs ID_or_name
    ## 列出所有容器的ID
    docker ps -qa
    
    docker exec -it id_or_name /bin/bash
    
    docker rm id_or_name
    
    ## 导入容器
    docker  export  -o test_name.tar   id_or_name
    ls
    docker  export id_or_name > test_name.tar22
    ls
    ## 导出容器
    docker  import  test_name_tar  -  test/ubuntu:v1.0
    

    Docker 数据管理

    数据卷:容器内数据直接映射到本地主机环境
    数据库容器:使用特定容器维护数据卷

    ## 在容器内创建一个数据卷
    docker run -d -P  --name web  -v /webapp  training/webapp  python app.py
    
    docker run  -d -P --name web  -v /src/webapp:/opt/webapp  training/webapp  python  app.py
    
    ## 数据卷容器
    docker run -it -v /dbdata  --name dbdata ubuntu
    docker run -it --volumes-from  dbdata  --name db1 ubuntu
    docker run -it --volumes-from  dbdata  --name db2 ubuntu
    ## 也可以从已经挂载了容器卷的容器来挂载数据卷
    docker run -d --volumes-from  db1  --name db1 training/postgres
    
    ## 数据卷容器的备份
    docker run --volumes-from dbdata -v ${pwd}:/backup  --name worker ubuntu  tar cvf /backup/backup.tar /dbdata
    
    ## 数据卷容器恢复
    ### 首先创建一个带有数据卷的容器dbdata2
    docker  run -v  /dbdata  --name dbdata2 ubuntu  /bin/bash
    docker  run --volumes-from dbdata2 -v ${pwd}:/backup busybox tar xvf /backup/backup.tar
    

    端口映射和容器互联

    ## -P Docker会随机映射一个49000-49900端口到容器开放的端口,-p Host_port:Container_port指定端口
    docker run -d -P training/webapp python app.py
    docker logs -f Name_or_ID
    
    docker port  Name_or_ID Port
    
    docker inspect Name_or_ID
    
    docker inspect -f "{{ .Name }}" Name_or_ID
    ## 容器互联 --link
    docker run -d --name db training/postgres
    
    docker run -d  -P --name web --link db:db training/webapp python app.py
    ## --link name:alias; 其中name是连接的容器名称,alias是这个连接的别名
    docker run --rm --name web2 --link db:db training/webapp env
    ## 父容器是什么容器??
    ## 除了环境变量之外,Docker还添加host信息到父容器的/etc/hosts文件。下面是父容器webd hosts文件
    docker run -it --rm --link db:db training/webapp /bin/bash
    
    root@lkdje323k3: # cat /etc/hosts
    
    
  • 相关阅读:
    下载安装安卓开发工具
    斐波那契数列
    各位相加
    求连续最大子序列和
    反转字符串中的单词
    统计位数为偶数的数字
    Express框架的整体感知
    node.js当中的http模块与url模块的简单介绍
    formidable处理提交的表单或文件的简单介绍
    30分钟,学会经典小游戏编程!
  • 原文地址:https://www.cnblogs.com/yes5144/p/11523473.html
Copyright © 2011-2022 走看看