• linux下docker容器安装已经docker基本使用命令详解


    1. docker容器安装;

    docker离线版本:

    wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.14.tgz

    下载完成以后解压tar包:

    tar -zxvf docker-20.10.14.tgz

    将相关命令拷贝到 /usr/bin/

    cp docker/* /usr/bin/

    将docker服务注册为系统服务:

    先创建docker.service
    vim /etc/systemd/system/docker.service

    将下列内容粘贴进去:
    [Unit]

    Description=Docker Application Container Engine

    Documentation=https://docs.docker.com

    After=network-online.target firewalld.service

    Wants=network-online.target

    [Service]

    Type=notify

    ExecStart=/usr/bin/dockerd

    ExecReload=/bin/kill -s HUP $MAINPID

    LimitNOFILE=infinity

    LimitNPROC=infinity

    TimeoutStartSec=0

    Delegate=yes

    KillMode=process

    Restart=on-failure

    StartLimitBurst=3

    StartLimitInterval=60s

    [Install]

    WantedBy=multi-user.target

    为docker.service文件添加执行权限:

    chmod +x /etc/systemd/system/docker.service

    重新加载配置文件:(每次有修改docker.service文件时都要重新加载下)
    systemctl daemon-reload

    启动docker服务:
    systemctl start docker.service

    设置开机自启:

    systemctl enable docker.service

    查看状态:
    systemctl status docker

    查看docker版本:

    docker -v

    安装完成后测试:

    配置镜像加速器,可以使用中科大加速器:

    tee /etc/docker/daemon.json <<-'EOF'

    {

      "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]

    }

    EOF

    刷新配置:
    systemctl daemon-reload

    重启docker:
    systemctl restart docker

    拉取镜像:

    docker pull  XXX(镜像名字)

    查看所有的镜像:
    docker images

    Docker使用EPEL发布,需要确保有EPEL仓库,先安装对应的EPEL包:

    yum install -y epel-release

    安装docker:

    yum install -y docker-io

    查看安装之后的配置文件:cat /etc/sysconfig/docker

    启动Docker后台服务:service docker start

    验证:docker version

    设置docker开机自启动:chkconfig docker on

    docker查看开机是否自启动:chkconfig docker --list

    1. docker容器:

    容器中可以拉取很多docker镜像

    使用docker images 命令即可查看已经存在的镜像名字:

    docker run -it xxx/bin/bash  ---可以进入xxx镜像的交互式

    docker ps   --查看正在运行的镜像(显示出镜像的ID。。。)

    也可以根据镜像的ID终止正在运行的镜像:

    docker rm ID

    如果镜像中有正在运行的服务,此时使用docker rm ID 无法终止,

    需要先停止docker中运行的服务,再重新终止运行的镜像:

    终止服务:

    docker stop tomcat

    再次执行:

    docker rm ID

    查看指令的具体用法;

    docker stats --help

    启动容器:

    docker start xxx   (xxx可以是容器名字也可以是ID)

    重启容器:

    docker restart xxx (xxx可以是容器名字也可以是ID)

    使用docker exec -it ID  /bin/bash  进入docker中

    (如果从这个容器退出,容器不会退出,推荐使用)

    导入和导出容器;

    docker export ID > ubuntu.tar

    导出的容器快照到本地文件 ubuntu.tar

    导入容器快照:
    cat docker/ubuntu.tar | docker import - test/ubuntu:v1

    也可以通过指定URL或者某个目录来导入;

    docker import http://example.com/exampleimage.tgz example/imagerepo

    删除容器;

    docker rm -f ID

    清理所有终止状态的容器:
    docker container prune

    运行一个web应用:
    使用docker构建一个web程序:

    Docker pull training/webapp

    Docker run -d -P training/webapp python app.py

    通过-p参数设置映射端口:

    docker run -d -p 8888:8080 tomcat

    (将虚拟机中的8888端口映射到docker中的8080端口)

    浏览器访问的时候只需要访问8888端口即可

    访问:虚拟机IP+8888端口

    (8888端口可以根据实际需要进行设置)

  • 相关阅读:
    Datawhale 2024 年 AI 夏令营第二期——基于术语词典干预的机器翻译挑战赛
    普惠联接,让人类诗意地栖居在大地上
    新成果展示:AlGaN/GaN基紫外光电晶体管的设计与制备
    中级深入--day17
    web前端框架设计第六课-样式绑定
    MatLab的下载、安装与使用(亲测有效)
    JavaScript-桥接模式
    Ubuntu 20.04 安装 Franka Control Interface (FCI)
    nodejs--开发自己的项目——2.1--优化-封装响应给客户端的内容- res.send(状态和错误消息)
    Linux编程——多任务间通信和同步
  • 原文地址:https://blog.csdn.net/qq_37651894/article/details/125998281