Я пытаюсь настроить devcontainer с помощью vscode в linux (fedora 37), но всегда получаю сообщение об ошибке, которое вы можете увидеть по ссылке на изображение ниже.
не удалось получить статус: ошибка rpc: код = недоступно desc = ошибка чтения с сервера: EOF
Это мои файлы конфигурации:
Докерфайл:
FROM php:7.4-apache
RUN apt-get update && apt-get install -y \
git \
unzip \
libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libzip-dev \
libicu-dev \
libc-client-dev \
libkrb5-dev \
libmagickwand-dev && \
docker-php-ext-configure gd --with-freetype --with-jpeg=/usr/include/ --enable-gd && \
docker-php-ext-install -j$(nproc) gd && \
docker-php-ext-configure intl && \
PHP_OPENSSL=yes docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
docker-php-ext-install -j$(nproc) imap && \
docker-php-ext-install zip && \
docker-php-ext-install mysqli && \
docker-php-ext-install pdo_mysql && \
docker-php-ext-install intl && \
docker-php-ext-install calendar && \
docker-php-ext-install exif && \
docker-php-ext-install gettext && \
docker-php-ext-install sockets && \
yes '' | pecl install imagick && docker-php-ext-enable imagick && \
a2enmod rewrite && \
a2enmod headers && \
a2enmod cgi && \
a2enmod proxy_fcgi && \
apt-get remove -y libfreetype6-dev \
libjpeg62-turbo-dev \
libpng-dev \
libzip-dev \
libicu-dev \
libc-client-dev \
libkrb5-dev \
libmagickwand-dev && \
apt-get clean -y
RUN sed -i -e '/.* rights = "none".*pattern = "PDF"/s/ rights = "none"/ rights = "read|write"/g' /etc/ImageMagick-6/policy.xml
COPY --from=composer:2.5 /usr/bin/composer /usr/bin/composer
devcontainer.json:
{
"name": "PHP",
"build": {
"context": ".",
"dockerfile": "Dockerfile"
},
"forwardPorts": [ "8000:80" ],
"customizations": {
"vscode": {
"extensions": [
"donjayamanne.git-extension-pack",
"waderyan.gitblame",
"ms-azuretools.vscode-docker",
"p1c2u.docker-compose",
"ms-vscode-remote.remote-ssh",
"TabNine.tabnine-vscode",
"DEVSENSE.phptools-vscode",
"xdebug.php-pack"
]
}
},
"workspaceMount":"source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=cached",
"workspaceFolder": "/workspace",
}
Огромное спасибо за помощь
Информация, которую я нашел в Интернете, говорит, что проблема в докере, но с докером все в порядке.
Я запускаю свою сборку докера, и она успешно завершается, но devconteiner каждый раз выдает ошибку
Скорее всего, это связано с ошибкой в стеке Docker, появившейся в недавнем Docker 23 (проверьте свою версию, чтобы убедиться, что приведенное ниже относится к вам).
Проблема VSC: https://github.com/microsoft/vscode-remote-release/issues/7958. Там вы можете найти обходной путь и ссылки на вышестоящие трекеры, которые напрямую решают проблему.
Я могу подтвердить, что обходной путь отключения BUILDKIT_INLINE_CACHE работает, то есть установка следующего в .devcontainer.json позволяет запускать VSC:
{
"build": {
"args": {
"BUILDKIT_INLINE_CACHE": "0"
}
}
}
Предполагается, что сама проблема уже исправлена , но, возможно, она еще не попала в ваш дистрибутив.
Большое спасибо!! Я проверил ссылки и проверил свою версию докера, и, конечно же, это была версия 23.0.0, я обновился до 23.0.1, и проблема была исправлена. Я думал, что проблема связана с самим плагином dev-контейнера, никогда не думал, что это ошибка докера.