在统信UOS操作系统中部署多容器应用时,几乎必然要用到Docker Compose。但很多用户第一步就遇到障碍:系统内并未预装docker-compose命令,更无法让docker-compose.yml正常运作。实际上,整个过程并不复杂,关键前提只有一个——必须确保Docker引擎已安装并处于运行状态,否则Compose根本无法启动。接下来,我们从环境检查入手,完整梳理安装与验证的步骤。

确认Docker是否已安装并运行
UOS基于Debian/Ubuntu架构,但默认并未集成Docker。动手前,先快速检查Docker引擎的当前状态:
执行 docker --version 和 sudo systemctl is-active docker。如果返回“command not found”或显示“inactive”,则表明Docker尚未安装或服务未启动——必须先完成Docker引擎的安装与启动,否则docker-compose无法正常使用。
若Docker已就绪,可继续往下操作;若未安装,请参照UOS官方文档安装Docker Engine(通常使用apt命令从uos仓库或Docker官方源进行安装)。
安装Docker Compose的三种方式
UOS并未提供docker-compose的官方deb安装包,因此需要手动部署。当前主流安装方案共有三种,按推荐优先级排列如下。
方法一:下载官方二进制(推荐)
第一步:切换到临时目录,避免权限问题干扰:cd /tmp
第二步:执行下载指令,注意架构选择——UOS桌面版通常为amd64,服务器版可能为arm64:sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
第三步:赋予可执行权限:sudo chmod +x /usr/local/bin/docker-compose
第四步:验证安装结果。若输出类似 docker-compose version 2.29.7,则表明安装成功。
方法二:用pip3安装(需已安装python3-pip)
执行 sudo pip3 install docker-compose。安装完成后,程序会放置在/usr/local/bin/目录下,但部分UOS版本默认未启用pip3,且可能因Python路径冲突导致命令无法使用。
注意:若遇到 ImportError: cannot import name 'main',说明pip版本过旧,请先执行 sudo python3 -m pip install --upgrade pip 升级pip后再重试。
方法三:从UOS应用商店搜索“Docker Compose”(仅限部分UOS社区版)
打开应用商店,在顶部搜索框中输入“docker compose”,查找带有UnionTech官方签名的应用,然后点击安装。此方式可自动处理依赖与PATH配置,但版本通常滞后于GitHub最新发布,且企业版UOS一般不提供该渠道。
验证docker-compose能否正常调用容器服务
安装完毕后,建议使用一个最小测试用例来确认一切正常:
新建目录并进入:mkdir ~/dc-test && cd ~/dc-test
创建 docker-compose.yml 文件,内容如下:
version: "3.8"
services:
alpine:
image: alpine:latest
command: sleep 5
执行 docker-compose up。终端会拉取alpine镜像、启动容器,5秒后自动退出。如果看到 Creating dc-test-alpine-1 ... done 和 Attaching to dc-test-alpine-1,则说明docker-compose已能正确解析配置并调用Docker守护进程。
再执行 docker-compose ps 查看服务状态,确认容器已启动并正常结束。
至此,整个环境验证通过。之后您便可以直接将实际业务的compose文件拿来部署使用。
