使用docker搭建drogon windows10,linux,mac下开发环境

2023-10-17 21:12

本文主要是介绍使用docker搭建drogon windows10,linux,mac下开发环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

2023年10月13日14:52:26

本机环境 Windows 10 专业版 22H2 操作内核19045.2965


如果直接在windows,linux,mac上直接搭建环境确实有一点难度,之前drogon官方并未提供官方镜像,现在有了docker镜像确实方便了,其实我是最近才有

简述安装docker desktop,windows的虚拟化有2个方案hyper-v和wsl

WSL2 版本要求
WSL 版本 1.1.3.0 或更高版本。
Windows 11 64 位:家庭版或专业版 21H2 或更高版本,或企业版或教育版 21H2 或更高版本。
Windows 10 64 位:家庭版或专业版 21H2(内部版本 19045)或更高版本,或企业版或教育版 21H2(内部版本 19045)或更高版本。

在 Windows 上打开 WSL 2 功能。有关详细说明,请参阅Microsoft文档.
成功运行需要以下硬件先决条件 Windows 10 或 Windows 11 上的 WSL 2:
64 位处理器,具有二级地址转换 (SLAT)
4GB 系统内存
必须在 BIOS 设置。有关详细信息,请参阅虚拟化。

要运行 Windows 容器,您需要 Windows 10 或 Windows 11 专业版或企业版。 Windows 家庭版或教育版仅允许您运行 Linux 容器。

Hyper-V和Windows 容器 版本要求
Windows 11 64 位:专业版 21H2 或更高版本,或企业版或教育版 21H2 或更高版本。
Windows 10 64 位:Pro 21H2(内部版本 19045)或更高版本,或企业版或教育版 21H2(内部版本 19045)或更高版本。

对于 Windows 10 和 Windows 11 家庭版,请参阅 WSL 2 后端选项卡中的系统要求。
Hyper-V 和容器 Windows 功能必须打开。
成功运行客户端需要以下硬件先决条件 Windows 10 上的 Hyper-V:
64 位处理器,带二级地址转换 (SLAT)
4GB 系统内存
必须在 BIOS 设置。有关详细信息,请参阅虚拟化。

官方说明文档:
https://docs.docker.com/desktop/install/windows-install/


官方是建议wsl2,因为性能更好,支持的功能更多,但是安装也麻烦一点
Hyper-V安装简单,只需要在 控制面板,程序和功能,启动关闭windows功能,勾选 Hyper-V

wsl2安装
1,检查WSL2的要求:win+R打开运行,然后输入winver检查windows版本

2,启用适用于 Linux 的 Windows 子系统:打开powershell 已管理员方式 并输入:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

3,启用虚拟化:以管理员打开powershell输入下列命令
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

  1. 下载X64的WSL2 Linux内核升级包并安装
    下载地址:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
    如果下载不了,使用迅雷下载文件
    官方地址:https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4—download-the-linux-kernel-update-package

5,设置WSL默认版本
wsl --set-default-version 2


下载 安装 Docker Desktop
下载地址:https://docs.docker.com/desktop/install/windows-install/
点击 Docker Desktop for Windows 下载。不行就用迅雷下载

安装之后,如果安装了wsl2,在Docker Desktop的在设置

Use the WSL 2 based engine
WSL 2 provides better performance than the Hyper-V backend
是选上的,如果安装的是Hyper-V就不是勾上的

参考:
https://zhuanlan.zhihu.com/p/386590591
https://learn.microsoft.com/zh-cn/windows/wsl/install

查看是否安装成功
wsl -l -v

接下来使用就是正常的命令了,windows,linux,mac都没什么区别了

docker地址:https://hub.docker.com/r/drogonframework/drogon/tags
现在嘎了,访问你懂的

拉取镜像:
docker pull drogonframework/drogon:latest运行镜像:linux demo
docker run -p 8778:8777 -v /data/code/drogon:/data/drogon -it drogonframework/drogon /bin/bash/data/code/drogon宿主机目录,/data/drogon容器目录,8777是drogon的默认端口windows demo
docker run -p 8778:8777 -v D:/docker/code/drogon:/data/drogon -it drogonframework/drogon /bin/bash

一些基本说明:
1,运行环境在docker里面,挂载代码目录到docker目录运行
2,建议直接在windows里面运行,如果还在linux里跑,会比较麻烦,还是remote-shh

这篇关于使用docker搭建drogon windows10,linux,mac下开发环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/227995

相关文章

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

redis中使用lua脚本的原理与基本使用详解

《redis中使用lua脚本的原理与基本使用详解》在Redis中使用Lua脚本可以实现原子性操作、减少网络开销以及提高执行效率,下面小编就来和大家详细介绍一下在redis中使用lua脚本的原理... 目录Redis 执行 Lua 脚本的原理基本使用方法使用EVAL命令执行 Lua 脚本使用EVALSHA命令

Linux之systemV共享内存方式

《Linux之systemV共享内存方式》:本文主要介绍Linux之systemV共享内存方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、工作原理二、系统调用接口1、申请共享内存(一)key的获取(二)共享内存的申请2、将共享内存段连接到进程地址空间3、将

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

使用Python和Pyecharts创建交互式地图

《使用Python和Pyecharts创建交互式地图》在数据可视化领域,创建交互式地图是一种强大的方式,可以使受众能够以引人入胜且信息丰富的方式探索地理数据,下面我们看看如何使用Python和Pyec... 目录简介Pyecharts 简介创建上海地图代码说明运行结果总结简介在数据可视化领域,创建交互式地

Java Stream流使用案例深入详解

《JavaStream流使用案例深入详解》:本文主要介绍JavaStream流使用案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录前言1. Lambda1.1 语法1.2 没参数只有一条语句或者多条语句1.3 一个参数只有一条语句或者多

Java Spring 中 @PostConstruct 注解使用原理及常见场景

《JavaSpring中@PostConstruct注解使用原理及常见场景》在JavaSpring中,@PostConstruct注解是一个非常实用的功能,它允许开发者在Spring容器完全初... 目录一、@PostConstruct 注解概述二、@PostConstruct 注解的基本使用2.1 基本代

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

springboot使用Scheduling实现动态增删启停定时任务教程

《springboot使用Scheduling实现动态增删启停定时任务教程》:本文主要介绍springboot使用Scheduling实现动态增删启停定时任务教程,具有很好的参考价值,希望对大家有... 目录1、配置定时任务需要的线程池2、创建ScheduledFuture的包装类3、注册定时任务,增加、删