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

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

文章目录

  • 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: mysql1
    restart: always
    # 授权
    user: root
    privileged: true 
    environment:  ##设置环境便变量
      TZ: Asia/Shanghai  ##设置时区
      MYSQL_ROOT_PASSWORD: 123456 #这里自行设置root用户的密码
    command:  ##设置容器运行时执行的命令
      --default-authentication-plugin=mysql_native_password
    volumes:
      - /D:/phpstudy_pro/Extensions/MySQL5.7.26/:/var/lib/mysql #挂载文件
    ports:
      - 3307:3306  #宿主机和容器间的端口映射,可自行配置

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

在此目录下 使用 运行脚本

docker-compose -f mysql_ceshi.yml up 

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/75308.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HTTP和HTTPS协议

目录 一、HTTP和HTTPS区别🌻 二、有了https还有使用http场景吗🍊 三、https协议的工作原理💥 四、https协议的优点和缺点🍞 一、HTTP和HTTPS区别🌻 HTTP(Hypertext Transfer Protocol)和HTT…

Freemarker+thymeleaf应用实现打印银行小票

背景&#xff1a;最近项目里有个需求&#xff0c;需要动态配置一个模板&#xff0c;来打印各种不同银行或者其他行业的小票&#xff0c;下面小小记录一下实现过程。 关键词&#xff1a;Springboot, thymeleaf, Freemarker,html2image 一&#xff0c;引入依赖 <dependency…

【算法——双指针】LeetCode 202 快乐数

题目描述&#xff1a; 思路&#xff1a;快慢指针 看到循环&#xff0c;我就想起了快慢指针的方法&#xff0c;从题目我们可以看出&#xff0c;我们需要模拟一个过程&#xff1a;不断用当前的数去生成下一个数&#xff0c;生成的规则就是将当前数的各位的平方累加&#xff1b; …

项目:基于UDP的TFTP文件传输

1&#xff09;tftp协议概述 简单文件传输协议&#xff0c;适用于在网络上进行文件传输的一套标准协议&#xff0c;使用UDP传输特点&#xff1a; 是应用层协议 基于UDP协议实现 数据传输模式 octet&#xff1a;二进制模式&#xff08;常用&#xff09; mail&#xff1a;已经不再…

C++RAII内存管理技术

文章目录 一.什么是RAII内存管理技术&#xff1f;二.智能指针unique_ptrshared_ptr循环引用问题weak_ptr 一.什么是RAII内存管理技术&#xff1f; C在引入异常机制后,代码执行流的跳转变得难以预料,如果使用普通的指针进行内存管理,很难避免内存泄漏的问题(执行流跳转导致堆区…

【Java 集合框架API接口】Collection,List,Set,Map,Queue,Deque

博主&#xff1a;_LJaXi Or 東方幻想郷 专栏&#xff1a; Java | 从跨行业到跨平台 开发工具&#xff1a;IntelliJ IDEA 2021.1.3 Java集合框架 API接口 Collection接口List接口HashSet&#xff0c; TreeSetSet接口使用 HashSet 实现使用 TreeSet 实现 HashMap、TreeMapMap接口…

MySQL高可用MHA

目录 前言 一、概述 二、配置免密、组从复制 三、MHA配置 四、测试 总结 前言 MySQL高可用管理工具&#xff08;MHA&#xff0c;Master High Availability&#xff09;是一个用于自动管理MySQL主从复制的工具&#xff0c;它可以提供高可用性和自动故障转移。MHA由原版的MHA工具…

Debian/Ubuntu清理硬盘空间

Debian/Ubuntu清理硬盘空间_debian清理磁盘空间_weixin_43606319的博客-CSDN博客 1. 删除残余的配置文件 通常Debian/Ubuntu删除软件包可以用两条命令 sudo apt-get remove <package-name> sudo apt-get purge <package-name> remove将会删除软件包&#xff0…

1.SpringMVC接收请求参数及数据回显:前端url地址栏传递参数通过转发显示在网页

1、SpringMVC 处理前端提交的数据 1.1 提交的域名和处理方法的参数不一致&#xff0c;使用注解解决 1.2 提交的域名和处理方法的参数不一致&#xff0c;使用注解解决 1.3 提交的是一个对象 2、前端url地址栏传递的是一个参数 请求地址url&#xff1a;http://localhost:8080/s…

5_docker-compose多服务统一编排管理

系列文章目录 第1章 Linux安装Docker 第2章 Docker安装jdk1.8和MySql 第3章 Docker安装redis 第4章 Jar包部署Docker 第5章 Docker-compose多服务统一编排管理 第6章 AccessKeyId和AccessKeySecret的环境变量配置 文章目录 系列文章目录前言 一、编写docker-compose.yml二、上…

计算机网络核心-数据交换

1 概述 计算机网络的核心即数据交换。通过数据交换将数据从源主机发送到目的主机。 2 为什么需要数据交换 如果不是数据交换的方式&#xff0c;而是每两台主机直接连接&#xff0c;则会产生N^2链路问题。 即&#xff0c;假设有N台主机&#xff0c;两两间建立连接&#xff0c…

软件测试基础篇——Linux

1、Linux系统的特征 开源免费&#xff1a; 开源&#xff1a;开放源代码&#xff0c;指的是底层的源代码是可以开放出来&#xff0c;给相关的开发者&#xff0c;根据实际的需求做出修改的。 免费&#xff1a;不花钱&#xff0c;自由传播。 ​ Linux是一种免费使用和自由传播的…

pytest数据驱动(最简单)

目录 第一种&#xff1a;通过yaml文件获取数据&#xff08;一维列表&#xff09; 第二种&#xff1a;通过yaml文件获取数据&#xff08;二维列表&#xff09; 第三种&#xff1a;通过yaml文件获取数据&#xff08;pytest.fixture&#xff09; 资料获取方法 第一种&#xff…

RTC实验

一、RTC简介 RTC(Real Time Clock)即实时时钟&#xff0c;它是一个可以为系统提供精确的时间基准的元器件&#xff0c;RTC一般采用精度较高的晶振作为时钟源&#xff0c;有些RTC为了在主电源掉电时还可以工作&#xff0c;需要外加电池供电BCD码&#xff0c;四位二进制表示一位…

【潮州饶平】联想 IBM x3850 x6 io主板故障 服务器维修

哈喽 最近比较忙也好久没有更新服务器维修案例了&#xff0c;这次分享一例潮州市饶平县某企业工厂一台IBM System x3850 x6服务器亮黄灯告警且无法正常开机的服务器故障问题。潮州饶平ibm服务器维修IO主板故障问题 故障如下图所示&#xff1a; 故障服务器型号&#xff1a;IBM 或…

CI/CD流水线实战

不知道为什么&#xff0c;现在什么技术都想学&#xff0c;因为我觉得我遇到了技术的壁垒&#xff0c;大的项目接触不到&#xff0c;做的项目一个字辣*。所以&#xff0c;整个人心浮气躁&#xff0c;我已经得通过每天的骑行和长跑缓解这种浮躁了。一个周末&#xff0c;我再次宅在…

2011-2021年数字普惠金融指数Bartik工具变量法(含原始数据和Bartik工具变量法代码)

2011-2021年数字普惠金融指数Bartik工具变量法&#xff08;含原始数据和Bartik工具变量法代码&#xff09; 1、时间&#xff1a;2011-2020&#xff08;省级、城市&#xff09;&#xff0c;2014-2020&#xff08;区县&#xff09; 2、原始数据来源&#xff1a;北大金融研究中心…

【数据结构】双链表

【数据结构】双链表 一. 前言二. 带头双向链表接口实现1.准备工作2. 创建一个节点 三. 初始化4. 打印5. 尾插6. 尾删7. 头插8. 头删9. 计算节点个数10. 查找数据11. 在任意位置插入数据12. 在任意位置删除数据13. 销毁 四. 如何10分钟内完成一个完整双链表 一. 前言 带头双向循…

通达OA SQL注入漏洞【CVE-2023-4165】

通达OA SQL注入漏洞【CVE-2023-4165】 一、产品简介二、漏洞概述三、影响范围四、复现环境POC小龙POC检测工具: 五、修复建议 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损…

元宇宙时代超高清视音频技术白皮书关于流媒体协议和媒体传输解读

流媒体协议 元宇宙业务场景对流媒体传输的实时性和互动性提出了更高的要求&#xff0c;这就需要在传统的 RTMP、SRT、 HLS 等基础上增加实时互动的支持。实时互动&#xff0c;指在远程条件下沟通、协作&#xff0c;可随时随地接入、实时地传递虚实融合的多维信息&#xff0c;身…