zoukankan      html  css  js  c++  java
  • docker安装和入门教程

    Tips:

    ① 如何删除老版本docker

    //列出已经安装的docker版本
    yum list installed | grep docker
    //删除对应的版本,eg
    sudo yum erase -y docker-client.x86_64

    安装流程:

    ① sudo yum install docker-ce

    ② yum list docker-ce --showduplicates | sort -r (此示例使用排序-r命令对结果进行排序,版本号由最高到最低,并被截断。)

    ③ 可以通过yum list installed | grep docker查看,发现已经自动帮你装最新版本的了

     

    ④ 启动sudo systemctl start docker

    ⑤ 通过运行hello-world镜像来验证Docker是否正确安装

     Docker CE已安装并运行。 您需要使用sudo来运行Docker命令。 继续执行Linux安装后,允许非特权用户运行Docker命令和其他可选配置步骤。

    进一步验证 docker run hello-world

     入门教程

    1. 运行一个web应用

    docker pull training/webapp  # 载入镜像
    
    docker run -d -P training/webapp python app.py
    #-d:让容器在后台运行。
    #-P:将容器内部使用的网络端口映射到我们使用的主机上

    查看 web应用容器

    docker ps

    Docker 开放了 5000 端口(默认 Python Flask 端口)映射到主机端口 32768上

    我们也可以通过 -p 参数来设置不一样的端口:

    docker run -d -p 5000:5000 training/webapp python app.py

    可以通过以下方式查看日志:

    -f:让 dokcer logs 像使用 tail -f 一样来输出容器内部的标准输出。

    我们可以通过docker stop gifted_shtern来停止运用程序(gifted_shtern对应于NAMES)

     2. 安装软件,比如nginx

    docker pull nginx //下载镜像
    docker run -d -p 80:80 --name nginx nginx//此次服务的名称自己起为nginx

     如果要删除容器

    可以使用 docker container rm 来删除一个处于终止状态的容器。例如

    docker container rm nginx //删除上面的容器

    可以进入镜像

    sudo docker exec -it mynginx /bin/bash

     ps:发现vim sudo rz 等命令都用不了(可以在镜像里安装vim) apt-get update;   apt-get install vim;两步搞定

    最后,通过 exit退出该镜像

    重点!!!修改镜像配置

    对于本人服务器  对nginx的配置是(/usr/share/nginx/html 目录是因为容器的default.conf 配置的文件路径就是这个)

    docker run -p 8080:80 --name guiqingnginx -v /root/h5:/usr/share/nginx/html -d nginx

    -v 将主机中当前目录下的/root/h5挂载到容器的/usr/share/nginx/html;此时

    sudo docker exec -it guiqingnginx /bin/bash //进入容器,会发现/usr/share/nginx/html/目录下已经被替换掉

    日常操作

    //删除所有未运行的容器,正在运行的删除不了
    sudo docker rm $(sudo docker ps -a -q)
    
    //停止所有运行的容器
    sudo docker stop $(sudo docker ps -a -q)
    
    //开启所有的容器
    sudo docker start $(sudo docker ps -a -q)
  • 相关阅读:
    使用gitlab, jenkins搭建CI(持续集成)系统(1) -- 准备环境
    后台开发技术(2)--接入层设计
    后台开发技术(1)--概述
    【Go】学习笔记兼吐槽(1)
    【PyCharm】书签的使用
    【pygame】Python 不到 300 行代码实现俄罗斯方块
    【杂谈】详解医保报销
    【Python 库】requests 详解超时和重试
    【Python 库】读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误
    【Python】鲜为人知的功能特性(下)
  • 原文地址:https://www.cnblogs.com/luguiqing/p/9146706.html
Copyright © 2011-2022 走看看