最新公告
  • 欢迎您光临欧资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • Docker常用操作命令

    Docker常用操作命令插图

    什么是Docker?

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

     

    为什么要使用Docker?

    1、无论是安装应用、搭建环境,还是部署应用,都十分的方便灵活

    2、节省资源开销。

    3、灵活迁移你开发的应用程序

     

    如何安装Docker?

     

    1、配置docker阿里云yum源 (直接执行下面的命令即可)

    cat >>/etc/yum.repos.d/docker.repo<<EOF
    [docker-ce-edge]
    name=Docker CE Edge - \$basearch
    baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/\$basearch/edge
    enabled=1
    gpgcheck=1
    gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
    EOF

    2、yum方式安装docker

    # yum安装
    yum -y install docker-ce
    
    ### 查看docker版本
    docker --version  
    
    ### 启动docker
    systemctl enable docker
    systemctl start docker

     

    Docker拉取Ubuntu镜像

     

    #拉取ubuntu官方镜像
    docker pull ubuntu
    
    #制作容器
    docker run -it -d -p 10122:22 --name hadoop_master ubuntu /bin/bash -D
    
    (注意,如果使用ubuntu的话,是没有自带ssh的,需要重新安装,然后制作成镜像后,然按下面的做成容器)
    docker run -it -d -p 10222:22 --name hadoop_3  moxi/ubuntu_ssh  /usr/sbin/sshd -D
    (使用上方 /usr/sbin/sshd,表示开机自动启动sshd脚本)
    
    #将宿主机的hosts文件写入到容器中
    docker run -d -h hadoop_master --name hadoop_master -p 10022:22  -p 50070:50070  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}') moxi/ubuntu_hadoop
    
    docker run -d -h hadoop_salve01 --name hadoop_salve01 -p 10122:22  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}') moxi/ubuntu_hadoop
    
    docker run -d -h hadoop_salve02 --name hadoop_salve02 -p 10222:22  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}') moxi/ubuntu_hadoop
    
    
    #进入容器
    docker exec -it hadoop_master /bin/bash (注:/bin/bash指进入容器时,执行的命令)
    

     

    制作CentOS容器

    # 制作master
    docker run  --privileged -it -d --name master -h master -p 10022:22 -p 50070:50070  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}')  moxi/centos_hadoop  /usr/sbin/init
    
    # 制作slaver101
     docker run  --privileged -it -d --name slave101 -h slave101 -p 10122:22  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}')  moxi/centos_hadoop  /usr/sbin/init
    
    # 制作slaver102
     docker run  --privileged -it -d --name slave102 -h slave102 -p 10222:22  $(cat /opt/software/hosts|awk -F ' ' '{if(NR>=0){print "--add-host "$2":"$1}}')  moxi/centos_hadoop  /usr/sbin/init
    
    ### 注意最后最佳 /usr/sbin/init 是为了能够启动systemctl在容器中

     

    制作蘑菇博客容器

    docker run --privileged -d -it -h mogu_blog_2 --name mogu_blog_2 -p 11122:22 -p 15672:15672 -p 5672:5672 -p 8600:8600 -p 9527:9527 -p 9528:9528 -p 6379:6379 -p 3306:3306 -p 80:80 -p 8080:8080 -v /etc/localtime:/etc/localtime:ro  moxi/mogu_blog_20191012 /usr/sbin/init

     

    宿主机 /opt/software/hosts 文件

    172.17.0.2  master
    172.17.0.3  slave101
    172.17.0.4  slave102
    172.17.0.5  slave103
    172.17.0.6  slave104
    172.17.0.7  slave105

     

    Ubuntu安装SSH

    1、更新镜像源

    # 更新apt源(注意:不更新有可能会出现安装错误)
    apt-get update
    
    # 安装SSH
    apt-get install ssh -y
    

    2、配置允许root用户远程访问

    # 打开配置文件
    vim /etc/ssh/sshd_config

     

    将 PermitRootLogin后面的值,改成yes,如下图所示

    Docker常用操作命令插图(2)

     

    保存退出后,重启SSH服务

    # ubuntu用户
    service ssh restart
    
    # centos用户
    systemctl restart sshd.service

     

    通过 XShell即可进行远程登录

    Docker常用操作命令插图(4)

     

    如果登录不了的话,那么我们需要开发宿主机对应的端口号,我的宿主机是centos,所以使用下面命令关闭防火墙

    #关闭防火墙
    systemctl stop firewalld.service
    
    #开机禁用防火墙
    systemctl disable firewalld.service

    Docker将镜像提交到Dockerhub

    1、什么是dockerhub

    dockerhub就类似于github,是一个镜像托管网站

     

    2、如何上传镜像

    #首先将容器制作成相应的镜像
    docker commit 0c27a8e124eb moxi/ubuntu_ssh
    
    #通过docker login输入相应的账号密码(没有账号需要先注册 https://hub.docker.com/)
    docker login
    
    #登录成功后,通过push提交镜像
    docker pull moxi/ubuntu_ssh

     

     

    Docker的常用命令

    #查看所有容器
    docker ps -a   
    
    #关闭容器
    docker stop 容器名 
    
    #启动容器
    docker start 容器名
    
    #删除容器(必须先关闭容器后才能删除)
    docker rm 容器名
    
    #查看所有镜像
    docker images
    
    #删除镜像
    docker rmi 镜像ID 
    站内大部分资源收集于网络,若侵犯了您的合法权益,请联系我们删除!
    欧资源网 » Docker常用操作命令

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    欧资源网
    一个高级程序员模板开发平台

    发表评论