zoukankan      html  css  js  c++  java
  • 【Docker】docker常用指令

    开启docker,并设置开机自启动

    老式写法:

    service docker start
    chkconfig docker on
    

    新式写法:

    systemctl  start docker.service
    systemctl  enable docker.service
    

    Build an image from a Dockerfile

    docker build -t friendlyhello .
    

    tag一个image,并push

    语法:

    docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
    docker push username/repository:tag
    

    示例:

    [root@localhost ~]# docker login   //登录
    [root@localhost ~]# docker tag friendlyhello ssslinppp/get-started:part1  //tag
    
    [root@localhost ~]# docker images
    REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
    friendlyhello           latest              0a60bcfe3e8d        28 minutes ago      194MB
    ssslinppp/get-started   part1               0a60bcfe3e8d        28 minutes ago      194MB
    python                  2.7-slim            d962f7a9f2f1        2 weeks ago         182MB
    hello-world             latest              1815c82652c0        3 weeks ago         1.84kB
    
    [root@localhost ~]# docker push ssslinppp/get-started:part1  //上传
    
    [root@localhost ~]# docker run -p 4000:80 ssslinppp/get-started:part1 //运行测试
        * Running on http://0.0.0.0:80/ (Press CTRL+C to quit)
    

    容器相关操作

    在容器内运行进程

    # 后台执行
    docker exec -d containerID CMD
    docker exec -d containerID touch /etc/new_config_file # 示例
    
    # 交互式执行
    docker exec -t -i containerID /bin/bash
    
    

    查看容器内进程

    docker top containerID
    

    查看容器详细信息

    docker inspect containerID
    

    查看容器的端口映射情况

    docker port containerID
    

    镜像相关操作

    查看镜像是如何被构建出来

    docker history imageID
    
    

    官方提供的常用命令

    docker build -t friendlyname .  # Create image using this directory's Dockerfile
    docker run -p 4000:80 friendlyname  # Run "friendlyname" mapping port 4000 to 80
    docker run -d -p 4000:80 friendlyname         # Same thing, but in detached mode
    docker ps                                 # See a list of all running containers
    docker stop <hash>                     # Gracefully stop the specified container
    docker ps -a           # See a list of all containers, even the ones not running
    docker kill <hash>                   # Force shutdown of the specified container
    docker rm <hash>              # Remove the specified container from this machine
    docker rm $(docker ps -a -q)           # Remove all containers from this machine
    docker images -a                               # Show all images on this machine
    docker rmi <imagename>            # Remove the specified image from this machine
    docker rmi $(docker images -q)             # Remove all images from this machine
    docker login             # Log in this CLI session using your Docker credentials
    docker tag <image> username/repository:tag  # Tag <image> for upload to registry
    docker push username/repository:tag            # Upload tagged image to registry
    docker run username/repository:tag                   # Run image from a registry
    
    docker stack ls              # List all running applications on this Docker host
    docker stack deploy -c <composefile> <appname>  # Run the specified Compose file
    docker stack services <appname>       # List the services associated with an app
    docker stack ps <appname>   # List the running containers associated with an app
    docker stack rm <appname>                             # Tear down an application
    
    docker-machine create --driver virtualbox myvm1 # Create a VM (Mac, Win7, Linux)
    docker-machine create -d hyperv --hyperv-virtual-switch "myswitch" myvm1 # Win10
    docker-machine env myvm1                # View basic information about your node
    docker-machine ssh myvm1 "docker node ls"         # List the nodes in your swarm
    docker-machine ssh myvm1 "docker node inspect <node ID>"        # Inspect a node
    docker-machine ssh myvm1 "docker swarm join-token -q worker"   # View join token
    docker-machine ssh myvm1   # Open an SSH session with the VM; type "exit" to end
    docker-machine ssh myvm2 "docker swarm leave"  # Make the worker leave the swarm
    docker-machine ssh myvm1 "docker swarm leave -f" # Make master leave, kill swarm
    docker-machine start myvm1            # Start a VM that is currently not running
    docker-machine stop $(docker-machine ls -q)               # Stop all running VMs
    docker-machine rm $(docker-machine ls -q) # Delete all VMs and their disk images
    docker-machine scp docker-compose.yml myvm1:~     # Copy file to node's home dir
    docker-machine ssh myvm1 "docker stack deploy -c <file> <app>"   # Deploy an app
    

  • 相关阅读:
    Mybatis入门
    Ajax
    产品经理之产品规划
    产品经理之用户研究(下)
    产品经理之用户研究(上)
    Spring Cloud
    Spring MVC
    synchronized
    Spring Boot入门
    Spring
  • 原文地址:https://www.cnblogs.com/ssslinppp/p/7230792.html
Copyright © 2011-2022 走看看