zoukankan      html  css  js  c++  java
  • Linux和Docker常用命令

    一、常用Linux 命令
      ls   -a(同时列出隐含文件),  -l(输出一个比较完整的格式,除每个文件名外,增加显示文件
         类型、权限、硬链接数、所有者名、组名、大小(byte)、及时间信息-----简化为 ll)
      mkdir    新建目录 例:mkdir test 命令会在当前目录下建立一个名为“test”的新目录  
      touch   创建文件    例:touch test/readme.txt 在 test 目录下创建 readme.txt文件
      cd   切换目录  cd /.  到根目录    cd .. 上一级目录   cd /hahaha/hahaha  到指定目录
      pwd   显示当前目录
      mv   移动/重命名(加上 -i 参数询问是否覆盖)   mv hello rock/ 移动到rock目录下   
           mv hello rock 重命名为rock
      cp   拷贝 (加上 -i 参数询问是否覆盖,-r 参数递归调用)  
            cp -ir test/  workspace"(递归复制 test 目录到 workpace 目录下并在覆盖时提示)
      rm   删除 (加上 -i 参数确认提示,-r 参数递归调用)  
          rm -ir test/  递归删除test目录及其子目录并询问
      wget url  下载文件到当前目录
      sudo  暂时获取超级用户权限(有默认时长)加上 -i 参数 没有时间限制,输入 exit或logout 退出
      su  账户名    切换到某某用户模式,没有时间限制
      ZIP 工具:
        压缩文件  zip target.zip filename
        压缩文件夹  zip -r target.zip dir   -r 参数表示递归压缩子目录
        解压  unzip target.zip
      tar 工具:
        -c: 建立压缩档案
        -x:解压
        -t:查看内容
        -r:向压缩归档文件末尾追加文件
        -u:更新原压缩包中的文件
        这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用
        其中一个。下面的参数是根据需要在压缩或解压档案时可选的。
        -z:有gzip属性的
        -j:有bz2属性的
        -Z:有compress属性的
        -v:显示所有过程
        -O:将文件解开到标准输出
        下面的参数-f是必须的
        -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名
        例:tar -xvf file.tar //解压 tar包
          tar -xzvf jdk-8u131-linux-x64.tar.gz -C /usr/local/java //解压jdk到指定文件夹  
          tar -cZf  jpg.tar.Z  *.jpg  //将目录里所有jpg文件打包成jpg.tar后,并且将其用
            compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
      vim 编辑器:  vim test.cpp
        vim 有两种模式,一种是普通模式,另一种是插入模式。执行上述命令以后进入普通模式。
        按下字母键“i”进入插入模式,使用方向键移动光标到需要插入的位置,然后输入想要插入
        的内容。编辑完成后按键“Esc”退出回到普通模式,在普通模式下输入冒号“:”,然后输入
        w 回车,保存更改。接着输入“:q”退出。也可以直接输入“:wq”保存并退出(注意 w 一定要
        在 q之前,先保存再退出)。
        查找:在普通模式下输入“/查找内容”,回车,即可定位到第一个匹配项。接着按下字母
           键“n”可以查找下一个。
        撤销:普通模式下输入“:u”并回车,实现撤销。
    二、常用docker 命令
      1.镜像
        docker images  列出本地所有镜像
        docker search(-s) nginx  搜索相关镜像 加上-s 参数 选出至少start数范围的镜像 
        docker pull(-a) 镜像名:版本号 拉取镜像,-a pull all
        docker push 192.168.0.100:5000/ubuntu      推送镜像库到私有源
        docker rmi(-f) 镜像名:版本号/镜像ID   删除镜像 (加上 -f 参数 强制删除)
        docker rmi $(docker images -q)  删除所有镜像
        docker rmi $(docker images | grep "none" | awk '{print $3}') 删除所有名字中带
            “none” 关键字的镜像
        docker save docker.io/tomcat:7.0.77-jre7 >/root/mytomcat7.tar.gz 导出镜像
        docker load < /root/mytomcat7.tar.gz  导入镜像
      2.容器
        docker ps 查看当前正在运行的容器
        docker inspect name/image[name/image...] 查看详细
        docker ps -a 查看所有容器的状态
        docker start/stop(-t) id/name[name...] 启动/停止某个(多个)容器 -t 指定时间
        docker kill (-s) name[name...] 强制中断 -s指定SIGINT信号类型,默认“kill”
        docker restart (-t) name[name...]  重启 -t 指定时间
        docker pause name 暂停  docker unpause name 继续
        docker rm(-$) name[name...] 移除 
          -f  --force=false  强制移除运行中容器
          -l  --link=false     移除指定链接,保留底层容器
          -v   --volumes=false   移除容器关联卷
        docker commit(-$)name 镜像名:版本号   提交指定容器为镜像
          -a, --author=""     作者
          -m, --message=""     简要说明
          -p, --pause=true    暂停容器再提交
     
        docker logs(-$) name  输出指定容器日志信息
          -f  跟踪日志输出
          -t  显示时间戳 类似 tail -f
          --tail  在日志的末尾输出指定行数日志(默认所有日志)
        docker attach id 进入某个容器(使用exit退出后容器也跟着停止运行)
        docker exec -ti id 启动一个伪终端以交互式的方式进入某个容器
                (使用exit退出后容器不停止运行)
        docker run(-$) IMAGE [COMMAND] [ARG...]    运行一个容器
          -d          指定容器运行于前台还是后台,默认为false     
           -i          打开STDIN,用于控制台交互,默认为false  
          -t           分配tty设备,该可以支持终端登录,默认为false   
          -u, --user=""              指定容器的用户   
          -a, --attach=[]            登录容器(必须是以docker run -d启动的容器)  
          -w          指定容器的工作目录  
          -c             设置容器CPU权重,在CPU共享场景使用    
          -e, --env=[]                指定环境变量,容器中可以使用该环境变量   
          -m          指定容器的内存上限    
          -P, --publish-all=false 指定容器暴露的端口    
          -p, --publish=[]           指定容器暴露的端口   
          -h         指定容器的主机名    
          -v, --volume=[]            给容器挂载存储卷,挂载到容器的某个目录  
          --volumes-from=[]       给容器挂载其他容器上的卷,挂载到容器的某个目录 
          --cap-add=[]     添加权限
          --cap-drop=[]         删除权限
          --cidfile=""      运行容器后,在指定文件中写入容器PID值,监控系统用法   
          --cpuset=""       设置容器可使用哪些CPU,此参数可以用来容器独占CPU   
          --device=[]           添加主机设备给容器,相当于设备直通   
          --dns=[]                       指定容器的dns服务器   
          --dns-search=[]           指定容器的dns搜索域名,写入到容器/etc/resolv.conf文件   
          --entrypoint=""             覆盖image的入口点   
          --env-file=[]                  指定环境变量文件,文件格式为每行一个环境变量   
          --expose=[]                  指定容器暴露的端口,即修改镜像的暴露端口   
          --link=[]                        指定容器间的关联,使用其他容器的IP、env等信息   
          --lxc-conf=[]                 指定容器的配置文件,只有在指定--exec-driver=lxc时使用   
          --name=""                    指定容器名字,links特性需要使用名字   
          --net="bridge"             容器网络设置:  
                                            bridge 使用docker daemon指定的网桥       
                                            host    //容器使用主机的网络    
                                            container:NAME_or_ID  >
                        //使用其他容器的网路共享IP和PORT等网络资源    
                                            none 容器使用自己的网络(类似--net=bridge)
          --privileged=false         指定容器是否为特权容器,特权容器拥有所有的权限
          --restart="no"               指定容器停止后的重启策略:  
                                             no:    容器退出时不重启    
                                             on-failure:   容器故障退出(返回值非零)时重启   
                                             always:   容器退出时总是重启   
          --rm=false           指定容器停止后自动删除容器(不支持以docker run -d启动的容器)   
          --sig-proxy=true  设置由代理接受并处理信号,SIGCHLD,SIGSTOP和SIGKILL不代
        例:
          docker run -i -t centos6.8 进入到默认的线程”/bin/bash”,直接进入控制台操作
          docker run -i -t -d centos6.8 进入到默认的线程”/bin/bash”,后台运行
          docker run -d --restart=always centos6.8  ping www.docker.com 带命令启动
          docker run -d --name=server-dbcentos6.8-mysql /usr/bin/mysql_safe -d
                  容器的名称为server-db,同时激活了数据库mysql的后台线程
          docker run -d --name=server-db -p 3306:3306 -v /server/mysql-data:/
                  mysql-datacentos6.8-mysql /usr/bin/mysql_safe –d
                  将宿主机的数据库目录/server/mysql-data挂载到server-db上
          docker run -d --name=server-db -p 3306:3306 centos6.8-mysql 
                  /usr/bin/mysql_safe –d 服务器宿主机与容器端口映射并暴露
          docker run -d --name=server-http --link=server-db  -p 8080:80centos6.8-httpd
                  /usr/bin/httpd --DFOREGROUND
                  映射服务器宿主机的8080端口,关联service-db 
          docker run -it --rm  centos6.8  容器进程结束后,立马自动删除
     
      3.docker option
        --api-enable-cors=false           在远程API中启用CORS 头
        -b, --bridge=""                     桥接网络 使用“none” 禁用容器网络
        --bip=""                             网桥模式                                        
        -d, --daemon=false                  守护者模式
        -D, --debug=false                    debug 模式
        --dns=[]                               强制 docker 使用指定 dns 服务器
        --dns-search=[]                     强制 docker 使用指定 dns 搜索域
        -e, --exec-driver="native"         强制 docker 运行时使用指定执行驱动器
        --fixed-cidr=""                      固定IP的IPv4子网(例: 10.20.0.0/16)必须镶套在桥子网
                      中(由-b or --bip定义)                                         
        -G, --group="docker"                当在守护模式中运行时,组指向-H指定的unix套接字。
                      使用""禁用组设置。
        -g, --graph="/var/lib/docker"     容器运行的根目录路径
        -H, --host=[]                           套接字绑定到守护模式。使用一个或多个tcp://主机:端
                      口,unix:///路径/到/套接字,fd://*或fd://socketfd.
        --icc=true                             inter-container跨容器通信
        --insecure-registry=[]                使用指定的注册表启用不安全通信(没有HTTPS的证书验
                      证和启用HTTP回退)(例如,localhost:5000或10.20.0 /16)
        --ip="0.0.0.0"                       绑定容器端口时使用的IP地址
        --ip-forward=true                      使用net.ipv4.ip_forward转发
        --ip-masq=true                          使IP伪装成桥的IP范围
        --iptables=true                     启用Docker添加iptables规则
        --mtu=0                                设置容器网络mtu                            
        -p, --pidfile="/var/run/docker.pid"    指定守护进程pid文件位置
        --registry-mirror=[]                指定一个首选的镜像仓库(加速地址)                 
        -s, --storage-driver=""                强制 docker 运行时使用指定存储驱动
        --selinux-enabled=false             开启 selinux 支持
        --storage-opt=[]                    设置存储驱动选项
        --tls=false                           开启 tls
        --tlscacert="/root/.docker/ca.pem"  只信任提供CA签名的证书
        --tlscert="/root/.docker/cert.pem"      tls 证书文件位置
        --tlskey="/root/.docker/key.pem"     tls key 文件位置
        --tlsverify=false                       使用 tls 并确认远程控制主机
        -v, --version=false                   输出 docker 版本信息


    docker服务重启

    systemctl 方式
    守护进程重启
    sudo systemctl daemon-reload
    重启docker服务
    sudo systemctl restart docker
    关闭docker
    sudo systemctl stop docker
    service 方式
    重启docker服务
    sudo service docker restart
    关闭docker
    sudo service docker stop

  • 相关阅读:
    python中的keys、values、items
    python中的del
    python中的reverse
    python中的remove
    python中的pop
    zookeeper for windows
    express
    js undefine,null 和NaN
    Think_php入口文件配置
    jquery 集合操作
  • 原文地址:https://www.cnblogs.com/LiChen19951127/p/12802869.html
Copyright © 2011-2022 走看看