Запустите npm-тест внутри изображения докеры и выйдите

Если вы не можете сделать то, что сказал @Martin Bean, тогда вы можете попробовать другой трюк.

Создайте новую миграцию и в этом файле в методе up () вставьте то, что находится в методе down () миграции, которую вы хотите отменить, и в методе down () вставьте метод, который находится в up ().

, например, если ваша первоначальная миграция похожа на это

public function up()
{
    Schema::create('users', function(Blueprint $table)
    {
        $table->increments('id')->unsigned();
        $table->string('name');
    });
}
public function down()
{
    Schema::drop('users');
}

, то в новом файле миграции сделайте это

public function up()
{
    Schema::drop('users');
}
public function down()
{
    Schema::create('users', function(Blueprint $table)
    {
        $table->increments('id')->unsigned();
        $table->string('name');
    });
}

, а затем запустите миграцию, она удалит Таблица. и если вы снова захотите вернуть его обратно.

0
задан kaounKaoun 13 July 2018 в 20:15
поделиться

1 ответ

Довольно уверен, что вы можете запускать только одну команду с ENTRYPOINT и с CMD.

Из своих документов:

В файле Docker может быть только одна команда CMD. Если вы перечислите несколько CMD, тогда вступит в силу только последний CMD.

То же самое с Entrypoint:

ENTRYPOINT имеет две формы:

  1. ENTRYPOINT ["исполняемый файл", "param1", "param2"] (форма exec, предпочтительная)
  2. Команда ENTRYPOINT param1 param2 (форма оболочки)

https://docs.docker.com/engine/reference/builder/#cmd https://docs.docker.com/engine/reference/builder / # entrypoint

Работа, которую я делаю, следующая

FROM ubuntu:16.04
WORKDIR /home/coins
RUN apt-get update

...
OTHER DOCKERFILE STUFF HERE
...


COPY ./entrypoint.sh /home/coins/
RUN chmod +x ./entrypoint.sh
ENTRYPOINT ./entrypoint.sh

entrypoint.sh:

#!/bin/bash
Can write whatever sh commands you need here..
exec sh ./some_script

EDIT:

. Одна идея заключается в том, что вы можете добавить тестовый сценарий sh и просто запустить эти 2 команды в нем, и вы сможете запустить его с помощью --entrypoint = "test.sh"

1
ответ дан lrossy 17 August 2018 в 12:10
поделиться
Другие вопросы по тегам:

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