zoukankan      html  css  js  c++  java
  • Docker

    什么是 Docker?

    个人理解,Docker 是一个平台,用于构建、运行程序,同时可以对运行环境进行打包,并在其他的计算机上运行(参考了教程视频官方教程
    我下载的是 Docker Desktop,即桌面软件(包含了 WSL),因此我可以直接在 Powershell 和 WSL 中运行 docker,也可以直接在 Docker Desktop 软件中运行 docker

    基础概念

    • Container:运行镜像的实例,可移植(一般的容器有:Windows、Linux、Cloud、Datacenter)
    • image(Container image):镜像,包含可运行程序(Application)

    补充:

    • Windows Terminal 中的 Powershell 与 WSL 共享同一个 Docker,即它们的 Container/APPs 是一致的
    • 容器(Container)和虚拟机(VM)具有相似的资源隔离和分配优势,但功能不同,因为容器虚拟化的是操作系统而不是硬件,因此容器更便携、更高效(两者都可以打包镜像)
    • 更改镜像源
    • 遇到不让部署的端口,解决博客在此

    常用命令

    • 运行命令前记得打开 Docker Desktop
    # 登入 Docker Hub(用户名为:courserli)
    docker login -u courserli
    
    # 从 Docker Hub 下载镜像(名字为:courserli 的 hello-docker)
    docker pull courserli/hello-docker
    
    # 分享镜像到 Docker Hub(名字为:courserli 的 hello-docker,默认 tag 为:latest)
    docker push courserli/hello-docker
    
    # 查看全部 docker 映像
    docker image ls
    
    # 构建 docker 映像(名字为:hello-docker,目标为当前文件)
    docker build -t hello-docker .
    
    # 运行 docker 映像(名字为:hello-docker)
    docker run hello-docker
    
    # 交互式运行 docker 映像(名字为:ubuntu)
    docker run -it ubuntu
    
    # 查看正在运行的 docker 容器进程
    docker ps
    
    # 查看已经停止的 docker 容器进程
    docker ps -a
    

    详细的命令可以看菜鸟教程

    举个例子(来源于官方教程

    下载映像项目(Application)
    ② 创建 Dockerfile 文件,内容如下:

    # syntax=docker/dockerfile:1
    FROM node:12-alpine
    RUN apk add --no-cache python2 g++ make
    WORKDIR /app
    COPY . .
    RUN yarn install --production
    CMD ["node", "src/index.js"]
    

    ③ 构建 docker 映像,命令如下:

    # -t 代表使创建过程为人类可读
    docker build -t getting-started .
    

    ④ 启动 docker 映像,命令如下:

    # -d 代表后台运行,否则在命令行中运行
    # -p 代表映射端口,前者为本地端口,后者为映像项目端口
    docker run -dp 2500:3000 getting-started
    

    ⑤ 打开 Web 浏览器访问 http://localhost:2500

    Wifi 测速(参考视频

    ① 从 Docker Hub 下载镜像(名字为:adolfintel/speedtest)
    docker pull adolfintel/speedtest
    ② 运行 docker 映像(端口为:本机IP地址:80:80,名字为:adolfintel/speedtest)
    docker run -dp 10.10.10.106:80:80 adolfintel/speedtest
    ③ 打开 Web 浏览器访问 10.10.10.106:8010.10.10.106

    PS:一般网速指的是下载速度,也就是左边的速度,但是上传速度也很重要
    PS:下面这个是测试我手机和电脑之间的速度

    喜欢划水摸鱼的废人
  • 相关阅读:
    JavaWeb学习总结(二)——Tomcat服务器学习和使用(一)
    JavaWeb学习总结(一)——JavaWeb开发入门
    javaweb学习总结(四)——Http协议
    Eclipse中应用的调试
    Java Web快速入门——全十讲
    Spring 系列: Spring 框架简介
    分布式环境中三种Session管理方法的使用场景及优缺点
    Cookie/Session机制详解
    HTTP 协议详解
    Webx3学习笔记(2)——基本流程
  • 原文地址:https://www.cnblogs.com/CourserLi/p/15800269.html
Copyright © 2011-2022 走看看