牛津小马哥沙雕跨境电商KOL,一个无趣的it男。
个人微信
公众号
视频号
更新时间2022-03-20

如何安装docker和docker-compose

Docker是一种容器化技术,你可以在这个容器中执行代码。

对于跨境人而言这个东西有什么作用呢?首先我并不认为这是必须要懂的,这本身属于计算机领域的。但是如果有一天,我说:“我可以给你一份文件(镜像),你可以直接在你电脑上抓取亚马逊的数据”,那么你就需要使用到docker,因为只要你的电脑有docker,你运行我给你的文件,只需要一行命令:

docker-compose -f PROGRAM.yaml run --build

例如有一天,你嫌弃阿里云的轻量服务器wordpress实在是太low了。其实也可以自己购买ecs,然后直接运行一个sql+wp+reverse-proxy的docker镜像就可以立刻搭建出来一个wordpress服务器,前后不超过10分钟。

如果你不使用docker行么?也可以运行我所给你提供的文件,但是你需要花费时间配置环境,例如python的virtual environment。Docker的应用非常广泛,简化了deploy部署的流程,对于想要探索更多技术领域的跨境人而言,无疑是值得学习的。

windows安装Docker

客户端安装链接

https://docs.docker.com/docker-for-windows/install/

自带docker和docker-compose。如果你是新版mac,用的是apple自己的芯片不是intel的芯片,那么你需要上docker的官网,下载另一个版本。

mac安装Docker

客户端安装链接

https://docs.docker.com/docker-for-mac/install/

自带docker和docker-compose

ubuntu安装Docker

一般当你需要在服务器(例如阿里云的ecs)上运行镜像文件的时候,你就需要安装docker和compose。这个最典型的跨境实际应用案例就是部署wordpress。

下面是你需要在服务器上运行的命令用于安装docker

// 如果你不是ubuntu,是其它的话,可以在https://docs.docker.com/engine/install/找到安装方式
// 更新apt
sudo apt-get update
// 然后安装必要的基本配置,后续好使用https
sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release
// 添加 Docker 官方的 GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
// 设置稳定版本的repo
echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
// 再次更新apt
sudo apt-get update
// 最后是安装
sudo apt-get install docker-ce docker-ce-cli containerd.io

接下来是需要安装docker-compose,这样子才能执行.yaml的文件

// 安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
// 安装完毕之后检查版本
// 你应该会看到一些类似于docker-compose version 1.29.2, build 1110ad01文字弹出
docker-compose --version

至此,安装完成了docker和docker-compose。你可以在服务器上执行任何的docker镜像文件了。