zoukankan      html  css  js  c++  java
  • Docker容器技术

    一.安装docker

    需要阿里的epel源,需要联网

    [root@bogon ~]#yum -y install docker

    [root@bogon ~]#systemctl start docker

    [root@bogon ~]#systemctl enable docker

    二.查看docker版本

    [root@bogon ~]#docker version

    查看docker详细信息

    [root@bogon ~]#docker info

    Debug Mode (client): false

    Debug Mode (server): false

    Registry: https://index.docker.io/v1/    连接的镜像

    .查看网络仓库镜像文件

    [root@bogon ~]# docker search -s 100 nginx

    [root@bogon ~]# docker search dhcpd

    [root@bogon ~]# docker search -s 100 httpd

    四.因为本地没有Nginx镜像,需要去联网下载

    [root@bogon ~]# docker pull docker.io/nginx

    [root@bogon ~]# docker pull docker.io/networkboot/dhcpd

    [root@bogon ~]# docker pull docker.io/httpd

    五.查看下载后的镜像,(下载到了本地镜像里面)

    [root@bogon ~]# docker images

    REPOSITORY       TAG        IMAGE ID      CREATED       SIZE

    docker.io/nginx    latest       53f3fd8007f7   About an hour ago   109 MB

    docker.io/httpd    latest       b7cc370ac278  2 hours ago         132 MB

    docker.io/networkboot/dhcpd   latest   52cbff801df2  7 weeks ago  105 MB

    六.查看Nginx的详细信息(很少用)

    [root@bogon ~]# docker inspect 53f3fd8007f7

    七.修改镜像标签的名称

    [root@bogon ~]# docker tag docker.io/nginx nginx:nginx

    [root@bogon ~]# docker images

    REPOSITORY      TAG     IMAGE ID     CREATED           SIZE

    docker.io/nginx    latest  53f3fd8007f7   About an hour ago   109 MB

    nginx            nginx  53f3fd8007f7   About an hour ago   109 MB

    docker.io/httpd    latest      b7cc370ac278             2 hours ago           132 MB

    docker.io/networkboot/dhcpd   latest  52cbff801df2   7 weeks ago   105 MB

    七.删除镜像

    [root@bogon ~]# docker rmi docker.io/nginx      rmi+名称

    八,存出镜像(如果我们需要把镜像迁移到另一台机器可以把镜像保存到本地当中)

    [root@bogon ~]# docker save -o nginx docker.io/nginx

    [root@bogon ~]# docker save -o httpd docker.io/httpd

    [root@bogon ~]# docker save -o dhcpd docker.io/networkboot/dhcpd

    [root@bogon ~]# ls    root/下是刚才迁移的镜像

    格式:save -o 重命名 镜像名称

    八.1存出容器(如果我们需要把容器迁移到另一台机器可以把容器导出为文件)

    [root@localhost ~]# docker export c8 > nginx1        export +容器ID> 重命名

    [root@localhost ~]# ls -l nginx1

    -rw-r--r--. 1 root root 1024 5月  12 16:36 nginx1

    把这个文件导入另一台机器,并用import - 重命名:标签

    [root@localhost ~]# cat nginx1 |docker import - nginx1:test

    sha256:be2d90fc6627e0547dd326b8f4987fb20a96142b6326b4ffd0d46932540e608b

    九,如果镜像删除 < 镜像导回

    [root@bogon ~]# docker rmi docker.io/networkboot/dhcpd

    [root@bogon ~]# docker load < dhcpd

    十.创建一个容器 -it    i是交互t是获取一个终端)

    [root@bogon ~]# docker create -it nginx:nginx /bin/bash

    e35b5559242e584ed57dc53ee5630976d77002637ef2f70a55ee0b5c5aaa5178

    [root@bogon ~]# docker ps -a

    [root@bogon ~]# docker start e35

    e35

    [root@bogon ~]# docker ps

    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

    e35b5559242e        nginx:nginx         "/bin/bash"         7 minutes ago       Up 6 seconds        80/tcp              unruffled_williams

    十一.进入容器

    [root@bogon ~]# docker attach e35

    root@e35b5559242e:/#

    root@e35b5559242e:/#

    root@e35b5559242e:/#

    root@e35b5559242e:/#

    root@e35b5559242e:/#

    root@e35b5559242e:/# ls

    bin  boot  dev etc  home  lib lib64  media  mnt  opt proc  root  run  sbin  srv  sys  tmp  usr  var

    十二,删除容器

    [root@bogon ~]# docker ps -a

    [root@bogon ~]# docker rm e35b5559242e

    e35b5559242e

    十三.运行端口

    [root@bogon ~]# docker run -it -p 8001:80 nginx:nginx /bin/bash

    root@3021c9504acc:/# nginx

    访问http://192.168.30.24:8001

    Welcome to nginx

    如果出现报错:

    WARNING: IPv4 forwarding is disabled. Networking will not work.

    解决办法:

    # vim  /usr/lib/sysctl.d/00-system.conf1

    添加如下代码:

    net.ipv4.ip_forward=11

    重启network服务

    # systemctl restart network1

    完成以后,删除错误的容器,再次创建新容器,就不再报错了。

    十四.映射多个端口

    [root@bogon ~]# docker run -itd -p 8002:80 nginx:nginx

    f58cb03f73e50626e16d29a2d4b51679d3e27412ffeb3f4f00a554543de8cd15

    [root@bogon ~]# docker run -itd -p 8003:80 nginx:nginx

    dbfeea5a04c0dc49e0b6235791044b1c780f900c8484c06a2ff1a36e963fa854

    十五.进入正在运行的容器

    [root@bogon ~]# docker exec -it f58cb03f73e5 /bin/bash

    root@f58cb03f73e5:/#

    十六.删除容器所有

    [root@bogon ~]# docker ps |awk 'NR>1{print $1}' |while read line

    > do

    > docker rm -f $line

    > done

    十六.进入容器并映射使用Nginx的镜像(使容器在后台运行不退出ctil+p+q

    [root@bogon ~]# docker run -it -p 8001:80 -v /web:/usr/share/nginx/html nginx /bin/bash

    root@b44f0259ac35:/# [root@bogon ~]#

    [root@bogon ~]# docker ps

    进入容器

    Docker attach 容器ID

    Docker exec -it 容器名称 bash

    退出容器并不关闭容器

    Ctrl + P + Q

  • 相关阅读:
    牛客-DongDong数颜色 及其相似题
    设置某个exe文件为启动项
    oracle nvl nvl2 decode
    oracle 查看表空间名称大小以及物理路径
    oracle cmd导入、导出dup文件
    div模拟弹框窗口
    token工具类
    转 nginx报502 bad GateWay错误的解决方法
    转 Nginx connect() failed (110: Connection timed out)
    转 Cannot assign requested address出现的原因及解决方案
  • 原文地址:https://www.cnblogs.com/zc1741845455/p/10943921.html
Copyright © 2011-2022 走看看