2017-01-03 5 views
1

У меня есть php5.6-Апач изображение построено на убунт и MySQL: 5,6 изображений. Я хочу создать изображение докеров с двух изображений, чтобы использовать новое построенное изображение в gitlab ci. Как я могу это сделать? Я довольно новичок в докере и gitlab.Создать Docker изображение с PHP и MySQL

Я пробовал следовать в gitlab, но не работал.

image: viraths/php5.6-apache:latest 

stages: 
    - build 
    - test 

deps build: 
    stage: build 
    variables: 
    MYSQL_DATABASE: test 
    MYSQL_ROOT_PASSWORD: password 
    DNSDOCK_ALIAS: localhost 
    services: 
    - mysql:5.6 
    script: 
    - export APPLICATION_ENV=test 
    - if [ -f /.dockerinit ]; then export COMPOSER_HOME=/cache/composer; fi; 
    - php -v 
    - composer install --no-progress --no-interaction --prefer-dist 
    artifacts: 
    paths: 
     - vendor/ 
    expire_in: 1 week 
    tags: 
    - docker 

У меня возникла следующая ошибка при запуске композиции в gitlab ci.

[Doctrine\DBAL\Exception\ConnectionException]         
An exception occured in driver: SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 
+0

Вы используете linux? –

+0

@SoniVimal yes ubuntu willy – Viraths

+0

может быть полезным для вас: http://stackoverflow.com/questions/11990708/error-cant-connect-to-local-mysql-server-through-socket-var-run-mysqld-mysq –

ответ

2

Неправильная настройка базы данных. С вашей конфигурацией mysql доступен на хосте mysql и порту 3306. Вместо этого ваше приложение пытается локальное подключение через unix-сокет. Настройте соединение, и все должно работать.

+0

Можете ли вы привести мне пример. – Viraths

+0

Нет, боюсь, я не могу сказать, как изменить конфигурацию приложения, которое я не видел. Я предполагаю, что вы используете Symfony, поэтому просто следуйте руководству: https://symfony.com/doc/current/doctrine.html В противном случае просто grep для хоста. –

+0

Спасибо, человек, который сработал. Я просто изменил файл parameters.yml.dist следующим образом. Параметры: database_host: mysql database_port: 3306 – Viraths