标签: docker

如何安装aptitude?

我尝试在全新安装的 Ubuntu Server 14.04(在 docker 上)上安装 aptitude,我得到:

Step 2 : RUN apt-get install aptitude
 ---> Running in 257ad5947629
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
  apt-xapian-index aptitude-common iso-codes libboost-iostreams1.54.0
  libclass-accessor-perl libcwidget3 libept1.4.12 libio-string-perl
  libparse-debianchangelog-perl libpython-stdlib libpython2.7-minimal
  libpython2.7-stdlib libsigc++-2.0-0c2a libsub-name-perl libtimedate-perl
  libxapian22 python python-apt python-apt-common python-chardet python-debian
  python-minimal python-six python-xapian python2.7 python2.7-minimal xz-utils
Suggested packages:
  app-install-data python-xdg aptitude-doc-en aptitude-doc tasksel debtags
  isoquery libcwidget-dev libhtml-parser-perl libhtml-template-perl
  libxml-simple-perl xapian-tools python-doc python-tk python-apt-dbg
  python-gtk2 python-vte …
Run Code Online (Sandbox Code Playgroud)

apt docker

7
推荐指数
2
解决办法
11万
查看次数

如何在 Ubuntu Gnome 15.10 中干净地设置网络 Docker

在 Ubuntu Gnome 15.10 中,Docker 几乎是开箱即用的,但有一个微妙之处。在我重新启动 docker 服务之前,容器似乎无法访问网络。

启动主机后,docker0 接口没有任何 IP 地址。

$ ifconfig docker0
docker0   Link encap:Ethernet  HWaddr ea:03:cc:9c:7a:cd
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:108 (108.0 B)
Run Code Online (Sandbox Code Playgroud)

如果我然后启动一个容器,docker0 接口只会获得一个 ipv6 地址,据我所知,容器无法连接网络。我无法 ping 主机 IP、LAN IP 或 Internet IP。我正在使用 ubuntu:trusty 映像并运行 bash 作为容器的主进程。

$ ifconfig docker0 
docker0   Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          inet6 addr: fe80::7801:6eff:fe86:6dd8/64 Scope:Link
          UP BROADCAST MULTICAST  MTU:1500  Metric:1 …
Run Code Online (Sandbox Code Playgroud)

networking docker

7
推荐指数
1
解决办法
1万
查看次数

如何配置 Docker 以使用 ZFS?

我正在尝试让 docker 使用现有的 zpool。根据Docker 文档,我应该将存储驱动程序设置为/etc/default/docker

DOCKER_OPTS="--storage-driver=zfs"
Run Code Online (Sandbox Code Playgroud)

但是,当我重新启动服务时,Docker 不会启动:

level=fatal msg="启动守护进程时出错:初始化图形驱动程序时出错:不满足驱动程序的先决条件(错误的文件系统?)"

尝试时,docker daemon --storage-driver=zfs我收到类似的错误。

我在 Xenial 中使用 Docker 1.5-1。

zfs docker

7
推荐指数
1
解决办法
2131
查看次数

如何配置我的防火墙以与 Docker 一起使用?

我的计算机在端口 1234 上托管了一个应用程序,除了我的机器之外,任何东西都不能访问该应用程序。但是,我的 Docker 容器(运行 Apache)应该能够访问它。同样,我的 Docker 容器在各种端口上托管了许多资源,这些资源同样只能从我的计算机访问。现在,由于我的系统为该特定网络使用网桥这一事实,情况变得更加复杂:

NETWORK ID          NAME                DRIVER              SCOPE
4d4b5e752963        bridge              bridge              local               
c387eb42698a        project_default     bridge              local               
6818c0eb94bf        host                host                local               
f7e4ed6c05a2        none                null                local  
Run Code Online (Sandbox Code Playgroud)

这个桥(令人讨厌)总是有一个随机生成的 ID,每次我重新启动我的 Docker Compose 设置时都会改变:

br-c387eb42698a Link encap:Ethernet  HWaddr 02:42:29:95:fd:2c  
          inet addr:172.18.0.1  Bcast:0.0.0.0  Mask:255.255.0.0
          inet6 addr: fe80::42:29ff:fe95:fd2c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:405753 errors:0 dropped:0 overruns:0 frame:0
          TX packets:530699 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:85147217 (85.1 MB)  TX bytes:75260996 (75.2 MB)
Run Code Online (Sandbox Code Playgroud)

简而言之,我需要以下内容:

  • 任何主机br-c387eb42698a(或任何网络名称)都可以访问我本地机器上的端口 …

firewall networking network-bridge docker

7
推荐指数
1
解决办法
7213
查看次数

在 Docker 容器中使用非 root 用户运行 sudo 命令

我有这个 Dockerfile:

FROM ubuntu:17.04

# Must have packages
RUN apt-get update && apt-get install -y nano zsh curl git

# Instal Oh my Zsh
RUN bash -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
RUN sed -i -- 's/robbyrussell/sonicradish/g' /root/.zshrc 

# Add none root user
RUN adduser admin
USER admin
Run Code Online (Sandbox Code Playgroud)

我正在使用 zsh shell 与管理员用户连接。

docker exec -ti linux zsh
Run Code Online (Sandbox Code Playgroud)

我正在添加一个非 root 用户(管理员)。

我仍然想sudo用这个用户执行一个命令,但它出错了:

$ sudo apt-get install vim
zsh: command not found: sudo
Run Code Online (Sandbox Code Playgroud)

与 bash shell 相同的消息。

如何sudo使用非 root 用户运行命令? …

bash sudo docker

7
推荐指数
1
解决办法
4万
查看次数

如何在 ubuntu 16.04 上启用 ssh root 访问

在 Ubuntu 16.04 上

sudo nano /etc/ssh/sshd_config
Run Code Online (Sandbox Code Playgroud)
  1. 改变

    PermitRootLogin prohibit-password 
    
    Run Code Online (Sandbox Code Playgroud)

    PermitRootLogin yes 
    
    Run Code Online (Sandbox Code Playgroud)
  2. sudo service ssh restart

仍然被拒绝

ssh root remote-access docker 16.04

7
推荐指数
1
解决办法
7万
查看次数

Ubuntu 20.04 中的 Docker 问题

更新到 ubuntu 20.04 后,当我访问 docker 中的容器时,我看不到任何文件或输入任何命令,这没什么用。那么是否与新版 ubuntu 中的 docker 或 docker 有关系?

docker

7
推荐指数
2
解决办法
1万
查看次数

卷不允许 Docker-compose 挂载的文件系统操作

我遇到了 docker-compose 的问题,它在已安装的硬盘驱动器上的文件夹中安装了一个卷。我见过很多解决方案,并且诚实地尝试了所有这些解决方案。

我在各自的组中更改了我正在使用的用户、root、docker 的权限。没有什么

写入操作工作正常,我可以通过 python 写入文件,我不受限制,但是当我运行 docker compose 来创建 sql db 时,它给了我这个:

错误:对于 mysql_db 无法启动服务 mysql_db:创建安装源路径“/db-path-mount”时出错:chown /db-path-mount/db-volume-folder/db-one:不允许操作

错误:对于 mysql_db 无法启动服务 mysql_db:创建安装源路径 '/db-path-mount' 时出错:chown /db-path-mount/db-volume-folder/db-one:不允许操作 错误:遇到错误提出该项目。

那里的故障排除似乎很少,我尝试了 docker-compose up -d 和 sudo docker-compose up -d,没有任何真正的改变。

drwxr-xr-x 3 myUser docker 4028276 Jul 26 04:47 db-volume-folder/
Run Code Online (Sandbox Code Playgroud)

和我的挂载点(etc/fstab):

UUID=MY_UUID /home/user/my_mount_point    auto uid=1001,gid=122,umask=022,defaults 0 1

(gid=122 is docker)
(uid=1001 is user)
Run Code Online (Sandbox Code Playgroud)

我使用的是ubuntu 20服务器

docker-compose.yml:

version: "3.7"
services:
  my_sql_db:
    container_name: my_sql_db
    user: root
    image: mysql/mysql-server:latest
    ports:
      - "1533:3306"
    env_file:
      - secrets/sqlserver.env
      - secrets/sqlpassword.env
    volumes: …
Run Code Online (Sandbox Code Playgroud)

mysql permissions mount container docker

6
推荐指数
1
解决办法
2万
查看次数

在 WSL Ubuntu 上运行 dockerd 作为后台

我已将 Docker 安装到 WSL Ubuntu 20.04 distr。为了让它运行我需要:

sudo dockerd
Run Code Online (Sandbox Code Playgroud)

它运行但它阻止了我的终端选项卡。要使用容器,我需要打开第二个选项卡。我尝试使用sudo dockerd &- 它似乎在后台运行 dockerd,但是当我更改目录时,它会停止。

在此输入图像描述

如何在后台运行 dockerd 并在不停止的情况下更改目录?

backup docker windows-subsystem-for-linux 20.04

6
推荐指数
1
解决办法
1万
查看次数

Ubuntu 20.04.5 LTS包升级破坏了Docker;如何从中恢复?

运行 20.04 LTS 的 VPS 以及一些已经存在多年的 Docker 镜像。

\n

我刚刚更新了安全性,以及应该是不间断的升级 ( apt-get update && apt-get upgrade),但该过程破坏了 Docker 安装。我已经尝试过删除并重新安装sudo dpkg --configure -a以及类似的命令,但它无法启动。我避免了清除,因为我不确定我了解哪些配置文件将被删除。

\n

系统控制状态:

\n
\xe2\x97\x8f docker.service - Docker Application Container Engine\n     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)\n     Active: failed (Result: exit-code) since Mon 2023-02-06 10:06:22 EST; 12s ago\nTriggeredBy: \xe2\x97\x8f docker.socket\n       Docs: https://docs.docker.com\n    Process: 1231 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)\n   Main PID: 1231 (code=exited, status=1/FAILURE)\n
Run Code Online (Sandbox Code Playgroud)\n

sudo journalctl -xe没有提供任何有用的东西。

\n

系统日志中最明显的消息:

\n

dockerd[1231]: failed to …

upgrade updates docker

6
推荐指数
1
解决办法
4818
查看次数