在轻量应用服务器上的学习日志(尝试失败了)

双十一买了¥198三年的 CPU: 2核 内存: 4GB,80GB SSD云硬盘,1200GB/月(带宽:8Mbps)的轻量应用服务器,感觉3年电费就不止要花这么多钱吧。

本来是准备用它来安装vs玩一下的,安装好后发现vs反应有点慢啊,如果安装数据库后,估计更慢了。

用它来学习操作laravel呢?

首先重装系统很方便啊,安装好Windows server 2019,重置密码,再安装docker。

mstsc远程桌面连接服务器,打开Powershell,输入命令,可以在本地电脑上复制,Ctrl+c,然后在服务器里Ctrl+v粘贴。

Install-Module DockerMsftProvider

出现提示:

需要使用 NuGet 提供程序来继续操作
PowerShellGet 需要使用 NuGet 提供程序“2.8.5.201”或更高版本来与基于 NuGet 的存储库交互。必须在“C:\Program
Files\PackageManagement\ProviderAssemblies”或“C:\Users\Administrator\AppData\Local\PackageManagement\ProviderAssembli
es”中提供 NuGet 提供程序。也可以通过运行 ‘Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force’ 安装
NuGet 提供程序。是否要让 PowerShellGet 立即安装并导入 NuGet 提供程序?
[Y] 是(Y) [N] 否(N) [S] 暂停(S) [?] 帮助 (默认值为“Y”):

输入Y按回车,安装NuGet包管理工具,从国外下载,速度好慢啊。

Ctrl+c 取消,输入命令Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force来安装,速度快多了。

再安装DockerMsftProvider

Install-Module DockerMsftProvider

不受信任的存储库
你正在从不受信任的存储库安装模块。如果你信任该存储库,请通过运行 Set-PSRepository cmdlet 更改其 InstallationPolicy
值。是否确实要从“PSGallery”安装模块?
[Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): A

输入A回车,一下子就安装好了。

再输入命令,安装docker:

Install-Package Docker -ProviderName DockerMsftProvider

是否确实要安装来自“DockerDefault”的软件?
[Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): A

输入A回车,安装需要花不少时间。做别的事情去,不然要等死了。Ctrl+c 取消重新安装,输入Y后,十几分钟后安装好。
重启服务器,查看docker版本:

抄一段 Docker 的三个基本概念:

  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

Windows server 2019上的docker可以安装 server core镜像,或者Nano镜像:

docker image pull mcr.microsoft.com/windows/servercore:1909

server core最新镜像版本是2019,具体可以看微软官方的介绍:更新 Windows Server 容器
或者是.net

docker pull mcr.microsoft.com/dotnet/runtime:6.0

具体可以看:hub.docker.com/_/microsoft-dotnet-...

安装Ubuntu,更多请看:hub.docker.com/_/ubuntu?tab=tags

docker pull ubuntu:latest

出错:

latest: Pulling from library/ubuntu
no matching manifest for windows/amd64 10.0.17763 in the manifest list entries

需要添加文件 :C:\ProgramData\docker\config\daemon.json

{
"registry-mirrors":["http://hub-mirror.c.163.com"],
"insecure-registries":[],
"debug":true,
"experimental":true
}

重启docker,再安装:

restart-service docker
docker pull ubuntu:latest

latest: Pulling from library/ubuntu
7b1a6ab2e44d: Pull complete
Digest: sha256:626ffe58f6e7566e00254b638eb7e0f3b11d4da9675088f4781a50ae288f3322
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

启动Ubuntu虚拟机:

 docker run -itd --name ubuntu-test ubuntu

出错:

PS C:\Users\Administrator> docker run -itd –name ubuntu-test ubuntu
docker: Error response from daemon: failed to start service utility VM (createreadwrite): kernel ‘C:\Program Files\Linux Containers\kernel’ not found.
See ‘docker run –help’.

原来云服务器不能开启虚拟化设置,所以在 Windows server 的云主机上是用不了docker的Linux系统的。
删除镜像:

docker rmi 镜像id

尝试失败!!

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 14
chowjiawei

我前几天也买了,docker是可以用的,他有预装docker的系统,装了就行了

2年前 评论
andu (楼主) 2年前
chowjiawei (作者) 2年前
andu (楼主) 2年前
chowjiawei (作者) 2年前
andu (楼主) 2年前
chowjiawei (作者) 2年前
chowjiawei (作者) 2年前
thebestxt

自己玩就装个虚拟机嘛。买服务器还是做网站好玩

2年前 评论
andu (楼主) 2年前

玩这些你选个win,晕了晕了~

2年前 评论
andu (楼主) 2年前

直接在云桌面开发,网络慢,会很卡,开发体验会很差;

有个折中的方案:本地开发,远程运行,我记得vscode可以配置

2年前 评论

有好几个虚拟化方案的,例如KVM,OpenVM...

印象中并不是所有都支持docker。

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!