01 设置
01 设置
在这里,我将指导您在哪里找到如何安装 Docker。 Docker 是您需要的最重要的软件。第二个,可以说是 Git,但别担心,我已经将 Git 包含在 docker 镜像中,这意味着你将在安装 Docker 后立即“免费”获得它。使用 Git 并不是绝对必要的,它只是为了节省您的时间并防止输入错误。
我不会为你提供如何安装 Docker 的详细分步教程,因为当你阅读本书时,本教程将过时。相反,我会给你关键的搜索世界,你将能够在你最喜欢的搜索引擎中找到一个。
一般注意事项:
- 你 ** __**应该有工作互联网访问。
- 如果您看到一些异常,只需在 Internet 中搜索完全相同的短语。在几乎所有情况下,你都不是第一个得到它的人,你会发现你应该做什么,或者至少在什么方向上让你的研究找到解决方案。当然,您应该了解您正在执行的操作,因为您可能会损坏您的计算机。
- 本章的代码在 GitHub 上免费提供。搜索“git-hub alex-ber”,然后打开名为 IntroCS 的存储库:
单击 IntroCS 链接,然后单击 01_setup 目录。您将在本章中找到按名称指定的命令。在每个命令之后,您将在 {name_of_the_file in 01_setup directory} 中看到。
Docker 的官方网站是一个很好的起点。只需输入“docker download”即可找到他。现在,您应该根据您使用的操作系统选择不同的路径。也可以安装在 AWS 中。但是,我将在最后讨论这个选项。
不过,有一个问题。官方 docker 站点将 Docker Desktop 推送给你。安装 Docker Desktop 是可以的,因为您将在教育目的中使用它,但对于我们的目的而言,它是多余的。
为了 视窗 用户在搜索中使用“docker 下载 Windows”。你应该找到类似的东西 https://docs.docker.com/desktop/install/windows-install/ .请注意,您将要安装 Docker Desktop。
在这里你可以选择你想在“幕后”使用什么技术—— WSL 2 后端 或者 Hyper-V 后端 .我只有经验 Hyper-V 后端 ,但是安装它非常具有挑战性(并且它不被认为是生产就绪的)。
- 为了 Hyper-V 后端 我必须为 Linux 安装 Windows 子系统( WSL )(它没有安装)并打开 BIOS 级硬件虚拟化,所谓 管理程序 (Hyper-V)。
- 为了 WSL 2 后端 你需要安装 Linux内核更新包 .
另外,我发现官方指南很难遵循,所以我使用了多个名为“如何在 Windows 上安装 Docker”的操作指南。
如果你害怕,这是故意的。 😃 如果您在更改 BIOS 设置和浏览多个教程方面没有问题,请继续在 Windows 上安装 Docker Desktop。如果没有,我可以向您建议以下替代方案:
- 搜索“如何在没有 Docker Desktop 的情况下在 Windows 上安装 Docker”。还有很多方法。就个人而言,我没有尝试过。但是您现在应该使用一些 Linux(通常是 Ubuntu)。说明书也很脆弱。引用:
请注意,目前这不适用于“Ubuntu 22.04 LTS”发行版。它适用于以下发行版:
Ubuntu 18.04 LTS
Ubuntu 20.04 LTS
Ubuntu 20.04.4 LTS
https://medium.com/geekculture/run-docker-in-windows-10-11-wsl-without-docker-desktop-a2a7eb90556d
- 找一个朋友,一些 IT 爱好者,可以为你安装 Docker Desktop。
- 将您正在使用的操作系统更改为另一个对 Docker 生态系统更友好的操作系统(我所做的)
- 使用 AWS 安装,到本章末尾。
[参见附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
为了 苹果系统 用户其实很简单。如果你安装了 homebrew,你可以执行以下命令来安装 Docker:
酿造桶安装码头工人
{01_macos_docker_install}
如果您没有自制软件,只需键入:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
或在互联网上搜索。
我的大学在 macOS 上安装了 Docker,只需在上面输入一个命令。
重要的: 要强制 docker 在 macOS(而不是 ARM/v7)上默认使用 linux/amd64 平台,请运行以下命令:
导出 DOCKER_DEFAULT_PLATFORM=linux/amd64
您可以将它放在 Mac M1 或任何适当替代方案的 .zshrc 文件中。
[参见附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
为了 Linux 它的代码行数更多,但相当简单。我是在 Ubuntu 20.04 LTS 上完成的。引用:
安装 Docker
您可以使用操作系统的包管理器来安装最新的 Docker 版本。您需要添加 Docker 的存储库,更新您的软件包列表,然后安装 Docker。
Debian/Ubuntu
首先添加安装过程所需的依赖项:
sudo apt-get 更新
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
接下来,添加 Docker 的存储库 GPG 密钥:
卷曲-fsSL[ https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg) | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
将存储库添加到您的源并更新您的包列表:
echo "deb [arch=amd64 签名=/usr/share/keyrings/docker-archive-keyring.gpg][ https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu) $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get 更新
现在您可以安装 Docker:
sudo apt-get install docker-ce docker-ce-cli containerd.io
[参见附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
软呢帽
添加 Docker 的包存储库:
sudo dnf -y 安装 dnf-plugins-core
sudo dnf 配置管理器 --add-repo[ https://download.docker.com/linux/fedora/docker-ce.repo](https://download.docker.com/linux/fedora/docker-ce.repo)
[参见附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
安装 Docker:
sudo dnf install docker-ce docker-ce-cli containerd.io
[参见附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
中央操作系统
添加 Docker 的包存储库:
sudo yum -y 安装 yum-utils
sudo yum-config-manager --add-repo[ https://download.docker.com/linux/fedora/docker-ce.repo](https://download.docker.com/linux/fedora/docker-ce.repo)
安装 Docker:
sudo yum install docker-ce docker-ce-cli containerd.io
https://www.howtogeek.com/devops/how-to-install-docker-and-docker-compose-on-linux/
亚马逊 Linux 2
使用 ssh 命令登录远程 AWS 服务器:
ssh [[email protected]](/cdn-cgi/l/email-protection)
[可能,您需要在这里传递密钥,带有 -i 的东西 .pem
EC2的文件]
…
安装docker,运行:
须藤百胜安装码头工人
https://www.cyberciti.biz/faq/how-to-install-docker-on-amazon-linux-2/
[ ** 笔记** :将您的用户添加到辅助 docker 组会降低系统的安全性。如果有人会在您的用户下进入您的系统,他可以使用 _码头工人_
有效地做任何他想做的事。另一方面,使用此命令可以使 PyCharm Professional 与 Docker 无缝交互。
$ sudo usermod -a -G docker ec2-user
$[ ID](https://www.cyberciti.biz/faq/unix-linux-id-command-examples-usage-syntax/?utm_source=Linux_Unix_Command&utm_medium=faq&utm_campaign=nixcmd) ec2-用户
# 将 Linux 用户的组分配重新加载到 docker w/o logout
$ newgrp 码头工人
[ ** 笔记** :将您的用户添加到辅助 docker 组会降低系统的安全性。如果有人会在您的用户下进入您的系统,他可以使用 _码头工人_
有效地做任何他想做的事。另一方面,使用此命令可以使 PyCharm Professional 与 Docker 无缝交互。
另请参阅附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试]。
最后但并非最不重要的, AWS 方法 .搜索“如何创建 AWS 账户”。您将需要您的信用卡。 AWS 提供免费套餐,它甚至提供免费套餐,但我应该警告您,定价系统绝不是 **** 透明的。
笔记: 如果您确实选择了免费套餐选项,请选择
t2.micro
实例类型。如果由于某种原因您不想使用免费套餐_t2.micro_
您将无法使用实例类型。在这种情况下,我建议使用a1.中
实例类型。我为 ARM/v8 创建了一种特殊的 docker 镜像,可以在 A1 实例类型上运行。在属于 ARM/v8 系列的 AWS Graviton 处理器上构建的 A1 实例类型,其成本约为在 AMD64 上运行的 t* 对等部件的一半。
接下来,搜索“How to Use Docker Containers with AWS EC2”。如果您安装了 Amazon Linux,您可以查看上面的 Ubuntu 部分。
您的托管操作系统将是 EC2。你可以安装你想要的任何版本的 Linux,只要它有一些终端并且你知道如何通过 SSH 进入它(不用担心,这通常是教程的一部分)。
这可能具有挑战性,因此您可以打电话给某人来帮助您。
重要提示:您应该注意您选择的 EC2 的实例类型。完全没问题,有 1 个 vCPU
另请参阅附录 1 了解在没有 sudo 的情况下使用 Docker 和附录 2 进行健全性测试。
附录:
1. 不使用 sudo 使用 Docker
Docker 守护进程运行为
_根_
.您通常必须在 Docker 命令前面加上_须藤_
.如果您经常使用 Docker,这可能会变得乏味。将自己添加到_码头工人_
组将让您使用 Docker,而无需_须藤_
.
sudo usermod -aG docker $USER
加入群组后,注销并再次登录。或者,运行
_newgrp 码头工人_
命令立即登录到更新的组。你现在应该可以放下了_须藤_
来自 Docker 命令。
https://www.howtogeek.com/devops/how-to-install-docker-and-docker-compose-on-linux/
笔记 : 将您的用户添加到辅助 docker 组会降低系统的安全性。如果有人会在您的用户下进入您的系统,他可以使用 码头工人
有效地做任何他想做的事。另一方面,使用此命令可以使 PyCharm Professional 与 Docker 无缝交互。
2. 健全性测试
如何测试 Docker 是否安装正确?
-
第一次尝试
码头工人--版本
你应该看到版本。如果您看到一些错误,最常见的原因是 Docker 引擎守护程序已关闭。
您可以通过检查其服务来检查 Docker 是否正在运行 系统控制
.有两个组件需要考虑, 码头工人
和 容器化
.
sudo systemctl status docker.service
sudo systemctl status containerd.service
码头工人
是 CLI 向其发送命令的 Docker 引擎守护进程。 容器化
是实际运行容器的底层运行时。
如果其中一个只是启动它们:
sudo systemctl start docker.service
sudo systemctl start containerd.service
2.尝试
码头工人运行你好世界:最新
这就是所有操作指南所说的。你应该看到“来自 Docker 的你好!”信息。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」