当前位置: 首页 > news >正文

docker 学习--03 环境安装(本人使用的win10 Linux也是在win10下模拟)

docker 学习–03 环境安装(本人使用的win10 Linux也是在win10下模拟)


docker 学习-- 01 基础知识

docker 学习-- 02 常用命令


文章目录

  • docker 学习--03 环境安装(本人使用的win10 Linux也是在win10下模拟)
    • @[TOC](文章目录)
  • 1. windows10 安装docker
    • 1.1 访问官网 点击下载
    • 1.2.点击下载的 exe文件-> 点击ok
    • 1.3错误处理 重启之后打开 报错 大概意思是缺少 WSL 这个东西并且我没有开启 虚拟化和Hyper-V
  • 2. Docker desktop 切换国内镜像
  • 3. 按照 Docker-composer
    • 3.1 docker-compose 指令集
  • 4 制作一个示例
    • 其他链接

1. windows10 安装docker

``

在 Windows 10 上安装 Docker 分为两种方式:使用 Docker Desktop for Windows 和安装
Docker 工具包。 这里使用的是 Docker Desktop for Windows

Docker Desktop for Windows 是官方提供的一款桌面应用程序,可以帮助您在 Windows 10 上快速安装和启动
Docker 环境。


官网 :https://www.docker.com/products/docker-desktop/

1.1 访问官网 点击下载

在这里插入图片描述

1.2.点击下载的 exe文件-> 点击ok

在这里插入图片描述

1.3错误处理 重启之后打开 报错 大概意思是缺少 WSL 这个东西并且我没有开启 虚拟化和Hyper-V

Docker Desktop - WSL kernel version too low Docker Desktop requires a
newer WSL kernel version. Update the WSL kernel by running “wsl
–update” or follow instructions athttps://docs,microsoft,com/windows/wsl/wsl2-kernel.

在这里插入图片描述

打开PowerShell(管理员运行)
//开启虚拟化
DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V
//开始Hyper-V
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
//重启完
//发现还是在报这个错误  使用 wsl --update 解决
wsl --update

在这里插入图片描述

2. Docker desktop 切换国内镜像

镜像源

网易:http://hub-mirror.c.163.com
中科大镜像地址:http://mirrors.ustc.edu.cn/
中科大github地址:https://github.com/ustclug/mirrorrequest
Azure中国镜像地址:http://mirror.azure.cn/
Azure中国github地址:https://github.com/Azure/container-service-for-azure-china
DockerHub镜像仓库: https://hub.docker.com/ 
阿里云镜像仓库: https://cr.console.aliyun.com 
google镜像仓库: https://console.cloud.google.com/gcr/images/google-containers/GLOBAL (如果你本地可以翻墙的话是可以连上去的 )
coreos镜像仓库: https://quay.io/repository/ 
RedHat镜像仓库: https://access.redhat.com/containers
{"registry-mirrors": ["http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"],"insecure-registries": [],"debug": true,"experimental": false
}

在这里插入图片描述

3. 按照 Docker-composer

作用 :
Docker Compose是一个用来定义和运行多个复杂应用的Docker编排工具。例如,一个使用Docker容器的微服务项目,通常由多个容器应用组成。那么部署时如何快速启动各个微服务呢,一个个手动启动?假如有上百个微服务呢,显然不现实,那么使用Docker Compose编排工具便可快速启动容器。
Compose 通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器,非常适合组合使用多个容器进行开发的场景。
编译一个本地文件来启动服务

3.1 docker-compose 指令集

获得一个命令的帮助
docker-compose 命令 --help构建并启动所有容器,如果镜像存在就重新构建
docker-compose up -d --build启动所有服务
docker-compose up -d构建启动nignx容器               
docker-compose up -d nginx       -f 指定使用的Compose配置文件启动,默认为docker-compose.yml,可以多次指定。
docker-compose -f docker-compose.yml up -d运行一个服务,并在服务上执行一个命令
docker-compose run 容器id或容器名 ip addr登录到nginx容器中             
docker-compose exec nginx bash此命令将会停止 up 命令所启动的容器,并移除网络
docker-compose down列出项目中运行的所有容器
docker-compose ps列出项目中运行及未运行的所有容器
docker-compose ps -a列出所有运行的服务容器
docker-compose ls列出所有服务容器(包括未运行的容器)
docker-compose ls -a重新启动nginx容器
docker-compose restart nginx          构建镜像          
docker-compose build nginx            不带缓存的构建       
docker-compose build --no-cache nginx     查看各个服务容器内运行的进程      
docker-compose top              查看nginx的实时日志               
docker-compose logs -f nginx        列出 Compose 文件包含的镜像           
docker-compose images 验证文件配置,当配置正确时,不输出任何内容,当文件配置错误,输出错误信息。                         
docker-compose config                以json的形式输出nginx的docker日志           
docker-compose events --json nginx        暂停nignx容器     
docker-compose pause nginx         恢复ningx容器            
docker-compose unpause nginx      删除容器(删除前必须关闭容器,执行stop)             
docker-compose rm nginx                       强制删除容器(不必先关闭容器)             
docker-compose rm -f nginx    停止nignx容器         
docker-compose stop nginx       启动nignx容器           
docker-compose start nginx     重启项目中的nignx容器                
docker-compose restart nginx               下载依赖的镜像
docker-compose pull   推送服务依的镜像
docker-compose push设置指定服务运行的容器个数。通过service=num的参数来设置数量
docker-compose scale web=3 db=2查看版本信息
docker-compose version

4 制作一个示例

我想要的效果是文件都在 我本地的数据库上 本地的数据库可以和容器里互通 文件如下

version: '3.4'
services:mysql1:  #mysql容器image: mysql container_name: mysql1restart: always# 授权user: rootprivileged: true environment:  ##设置环境便变量TZ: Asia/Shanghai  ##设置时区MYSQL_ROOT_PASSWORD: 123456 #这里自行设置root用户的密码command:  ##设置容器运行时执行的命令--default-authentication-plugin=mysql_native_passwordvolumes:- /D:/phpstudy_pro/Extensions/MySQL5.7.26/:/var/lib/mysql #挂载文件ports:- 3307:3306  #宿主机和容器间的端口映射,可自行配置

我是在d 盘文件 下创建 了 一个 mysql_ceshi.yml 文件 在这里插入图片描述

在此目录下 使用 运行脚本

docker-compose -f mysql_ceshi.yml up 

在这里插入图片描述
成功运行我们来访问一下吧
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
链接成功

其他链接


docker 学习-- 01 基础知识

docker 学习-- 02 常用命令


http://www.lryc.cn/news/125891.html

相关文章:

  • 【代码质量】认知复杂度(COGNITIVE COMPLEXITY)一种衡量可理解性的新方法
  • 什么是JavaScript中的内存泄漏和如何避免内存泄漏?
  • 安全头响应头(三)​X-Content-Type-Options
  • 13 计算机视觉-代码详解
  • jupyter打开ipynb后,还没有运行cell,反复报错
  • 一台阿里云服务器怎么部署多个网站?以CentOS系统为例
  • history记录日期时间和日志记录操作
  • RocketMQ 单机源码部署 自定义配置文件和端口以及acl权限配置解析
  • NuGet控制台命令初步使用
  • 2023年国赛数学建模思路 - 案例:FPTree-频繁模式树算法
  • Positive Technologies:有针对性的攻击占非洲所有攻击的 68%
  • Flink CDC系列之:TiDB CDC 导入 Elasticsearch
  • 未来混合动力汽车的发展:技术探索与前景展望
  • C进阶(2/7)前篇——指针进阶
  • C 内存分配器 mimalloc
  • leetcode做题笔记74搜索二维矩阵
  • 深信服数据中心管理系统 XXE漏洞复现
  • 【Kubernetes】Kubernetes的Pod进阶
  • 都错了!机械硬盘远比SSD更省电 最多领先94%
  • tomcat设置PermSize
  • JVM——分代收集理论和垃圾回收算法
  • jar包独立运行的几种方式
  • [python] 安装numpy+scipy+matlotlib+scikit-learn及问题解决
  • uniapp使用命令创建页面
  • Linux(进程控制)
  • Java学习笔记——(18)进制介绍
  • 【数学建模】--灰色关联分析
  • 图像像素梯度
  • [论文笔记]Batch Normalization
  • SpringCloud教程(中)