Наличие проблемы, устанавливающей клавиатуру по умолчанию в Visual Studio, кодирует при разработке в контейнере докера

Я испытываю затруднения после этого руководства по Ubuntu 18.04 при работе с определенным репозиторием (если кто-либо хотел бы следовать вперед, repo здесь). Когда я пытаюсь выполнить этот шаг:

Избранные Удаленные Контейнеры: Откройте Folder in Container... из списка команд, который появляется, и откройте корневую папку проекта, который Вы просто клонировали.

Я сталкиваюсь с проблемой, где код Visual Studio просит, чтобы я "Выбрал раскладку клавиатуры для этой машины". Следующим образом:

...
[62625 ms] Setting up netbase (5.4) ...
[62645 ms] Setting up libwebp6:amd64 (0.5.2-1) ...
[62654 ms] Setting up zlib1g-dev:amd64 (1:1.2.8.dfsg-5) ...
[62664 ms] Setting up libdb-dev:amd64 (5.3.1) ...
[62673 ms] Setting up libjsoncpp1:amd64 (1.7.4-3) ...
[62682 ms] Setting up libvorbisfile3:amd64 (1.3.5-4+deb9u2) ...
[62691 ms] Setting up libedit2:amd64 (3.1-20160903-3) ...
[62701 ms] Setting up libgmp-dev:amd64 (2:6.1.2+dfsg-1) ...
[62710 ms] Setting up libx265-95:amd64 (2.1-2+b2) ...
[62719 ms] Setting up keyboard-configuration (1.164) ...
[62790 ms] debconf: unable to initialize frontend: Dialog
debconf: (TERM is not set, so the dialog frontend is not usable.)
debconf: falling back to frontend: Readline
[63090 ms] Configuring keyboard-configuration
----------------------------------

Please select the layout matching the keyboard for this machine.

[63090 ms]   1. English (US)
  2. English (US) - Cherokee
  3. English (US) - English (Colemak)
  4. English (US) - English (Dvorak alternative international no dead keys)
  5. English (US) - English (Dvorak)
[63091 ms]   6. English (US) - English (Dvorak, international with dead keys)
[63091 ms]   7. English (US) - English (Macintosh)
  8. English (US) - English (Programmer Dvorak)
[63091 ms]   9. English (US) - English (US, alternative international)
  10. English (US) - English (US, international with dead keys)
  11. English (US) - English (US, with euro on 5)
[63091 ms]   12. English (US) - English (Workman)
  13. English (US) - English (Workman, international with dead keys)
[63091 ms]   14. English (US) - English (classic Dvorak)
[63091 ms]   15. English (US) - English (international AltGr dead keys)
[63091 ms]   16. English (US) - English (left handed Dvorak)
[63091 ms]   17. English (US) - English (right handed Dvorak)
  18. English (US) - English (the divide/multiply keys toggle the layout)
  19. English (US) - Russian (US, phonetic)
  20. English (US) - Serbo-Croatian (US)
[63091 ms]   21. Other
[63092 ms] Keyboard layout: 

Но я не могу на самом деле ввести в терминале в VS Code для выбора клавиатуры? Я нашел пару других ответов на это здесь, где можно сделать что-то вроде этого в dockerfile: DEBIAN_FRONTEND=noninteractive apt-get install keyboard-configuration Но это, кажется, не решает проблему также. Я попробовал этот весь процесс на MacBook только, чтобы удостовериться, что это не просто я, и он заканчивает этот шаг очень хорошо, который заставляет меня думать, что это - связанная с Ubuntu проблема (или по крайней мере по сравнению с кодом проблемы человечности), но я в чем-то вроде потери о том, как закончить это.

Вы видите dockerfile здесь (если он помогает):

FROM debian:stretch-slim

#
# avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND=noninteractive

ARG USERNAME=neko
ARG USER_UID=1000
ARG USER_GID=$USER_UID

#
# install neko dependencies
RUN set -eux; apt-get update; \
    apt-get install -y --no-install-recommends wget ca-certificates pulseaudio openbox dbus-x11 xserver-xorg-video-dummy supervisor; \
    apt-get install -y --no-install-recommends libcairo2 libxcb1 libxrandr2 libxv1 libopus0 libvpx4; \
    #
    # create a non-root user
    groupadd --gid $USER_GID $USERNAME; \
    useradd --uid $USER_UID --gid $USERNAME --shell /bin/bash --create-home $USERNAME; \
    adduser $USERNAME audio; \
    adduser $USERNAME video; \
    adduser $USERNAME pulse; \
    #
    # setup pulseaudio
    mkdir -p /home/$USERNAME/.config/pulse/; \
    echo "default-server=unix:/tmp/pulseaudio.socket" > /home/$USERNAME/.config/pulse/client.conf; \
    #
    # workaround for an X11 problem: http://blog.tigerteufel.de/?p=476
    mkdir /tmp/.X11-unix; chmod 1777 /tmp/.X11-unix; chown $USERNAME /tmp/.X11-unix/; \
    #
    # make directories for neko
    mkdir -p /etc/neko /var/www /var/log/neko; chmod 1777 /var/log/neko; chown $USERNAME /var/log/neko/;  \
    chown -R $USERNAME:$USERNAME /home/$USERNAME; \
    #
    # clean up
    apt-get clean -y; \
    rm -rf /var/lib/apt/lists/* /var/cache/apt/*

#
# add gst to env
ENV PATH=/gst/local/bin:$PATH
ENV LD_LIBRARY_PATH=/gst/local/lib:$LD_LIBRARY_PATH
ENV PKG_CONFIG_PATH=/gst/local/lib/pkgconfig:$PKG_CONFIG_PATH

#
# copy gst
COPY .build/gst/local /gst/local/

#
# env
ENV USER=$USERNAME
ENV DISPLAY=:99.0

#
# copy configuation files
COPY .docker/files/dbus /usr/bin/dbus
COPY .docker/files/openbox.xml /etc/neko/openbox.xml
COPY .docker/files/neko/supervisord.conf /etc/neko/supervisord/neko.conf
COPY .docker/files/supervisord.conf /etc/neko/supervisord.conf
COPY .docker/files/xorg.conf /etc/neko/xorg.conf
COPY .docker/files/default.pa /etc/pulse/default.pa

#
# neko files
COPY client/dist/ /var/www
COPY server/bin/neko /usr/bin/neko

#
# neko env
ENV NEKO_PASSWORD=neko
ENV NEKO_ADMIN=admin
ENV NEKO_BIND=:8080

#
# run neko
CMD ["/usr/bin/supervisord", "-c", "/etc/neko/supervisord.conf"]
2
задан 1 April 2020 в 18:58

2 ответа

Добавьте к ВЫПОЛНЕННОМУ /usr/sbin/dpkg-reconfigure keyboard-configuration или /usr/bin/apt-get install -y --reinstall keyboard-configuration

контурная карта набора localectl en_US.UTF-8 systemctl перезапускает клавиатуру-setup.service

Попытайтесь удалить ENV DEBIAN_FRONTEND=noninteractive и необходимо смочь ввести вход.

Возможно, рассмотрите localectl set-keymap en_US.UTF-8 и systemctl restart keyboard-setup.service

0
ответ дан 7 April 2020 в 23:22

Вы можете подготовить свой файл конфигурации и переместить его в контейнер следующим образом (выполнить перед установкой)

COPY ./keyboard /etc/default/keyboard

Файл конфигурации выглядит так:

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS=""

BACKSPACE="guess"

Это старый, но я считаю, что он вам подойдет. Подробнее см. Здесь о Baseimage-docker

0
ответ дан 10 April 2020 в 14:40

Другие вопросы по тегам:

Похожие вопросы: