如何在docker中安装特定于os的软件包?

时间:2016-05-20 03:50:11

标签: ubuntu docker ubuntu-15.10

我正在使用ubuntu 15.10,并尝试使用docker来设置我的节点和mongo环境。但由于lsb_release -a命令在docker中不起作用,我无法知道ubuntu docker image的版本。它被标记为ubuntu:latest。此外,/etc/lsb-release实用程序在docker中显示权限被拒绝。

有没有办法知道Docker容器中存在哪个ubuntu版本,因为要安装mongo我需要添加版本的名称,例如为14.04

echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

2 个答案:

答案 0 :(得分:1)

这应该有效

RELEASE=$(cat /etc/lsb-release  | grep DISTRIB_RELEASE  | cut -d= -f2)

我刚刚在我的ubuntu上尝试过:最新的docker图像并获得版本16.04

$ docker run -it ubuntu:latest /bin/bash
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
6d28225f8d96: Pull complete
166102ec41af: Pull complete
d09bfba2bd6a: Pull complete
c80dad39a6c0: Pull complete
a3ed95caeb02: Pull complete
Digest: sha256:5718d664299eb1db14d87db7bfa6945b28879a67b74f36da3e34f5914866b71c
Status: Downloaded newer image for ubuntu:latest

这是输出

root@9c4c1e6313ce:/# RELEASE=$(cat /etc/lsb-release  | grep DISTRIB_RELEASE  | cut -d= -f2)
root@9c4c1e6313ce:/# echo $RELEASE
16.04

答案 1 :(得分:0)

您可以使用ubuntu:

cat /etc/os-release

for alpine:

cat /etc/lsb-release