Если ваш initrd использует dracut
, вам нужно создать символическую ссылку /dev/root
на монтируемое устройство (, но не для монтирования ). В вашем случае:
ln -s /dev/sdb1 /dev/root
Dockerfile
Это "нормальный" способ. В основном вы создаете файл (, обычно называемый Dockerfile
), который содержит:
# The image we will start with:
FROM ubuntu:16.04
# Install packages, by running a command
RUN apt update && apt install package1 package2
# You can also copy you own script/config files
COPY startup.sh /startup.sh
Затем вы «компилируете» свой образ (, предполагая, что каталог с Dockerfile и скриптом является текущим каталогом):
docker build -t my_image.
Тогда используйте свое изображение:
docker run my_image
Полный синтаксис Dockerfiles здесь
Преимущества этого метода:
docker commit
Вы также можете создать образ из содержимого текущего контейнера:
docker commit <containerId> <imageName>
Проблема в том, что если образ работает, то толком не знаешь, что там внутри, да и передать не просто (это немаленький файл)
sudo
nano
, отредактируйте файлы вне контейнера и скопируйте их с помощью Dockerfile. Контейнер - вещь на выброс -...