【发布时间】:2020-04-27 19:55:09
【问题描述】:
我已经开始了我的 laravel 项目,我正在尝试对我的代码进行单元测试并测试与 jankins 的数据库连接,这是我的 Jenkinsfile 以及我的配置方式:
pipeline {
agent {
dockerfile true
}
stages {
stage("Build") {
steps {
sh 'php --version'
sh 'composer install'
sh 'composer --version'
sh 'cp .env.example .env'
sh 'php artisan key:generate'
}
}
stage("Unit test") {
steps {
script {
docker.image('mysql:5.7').withRun('-e "MYSQL_DATABASE=testing" -e "MYSQL_ROOT_PASSWORD=root"') { c ->
docker.image('mysql:5').inside("--link ${c.id}:db") {
/* Wait until mysql service is up */
sh 'while ! mysqladmin ping -hdb --silent; do sleep 1; done'
}
sh "./vendor/bin/phpunit"
}
}
}
}
}
}
单元测试阶段一直报错,无法完成,请问是什么原因??
Docker 配置的所有项目。
【问题讨论】:
-
你看到了什么错误?
-
这个错误
+ docker run -d -e MYSQL_DATABASE=testing -e DB_USERNAME=root -e DB_PASSWORD=root mysql:5.7 docker: error while loading shared libraries: libltdl.so.7: cannot open shared object file: No such file or directory script returned exit code 127 -
你能发布你的 docker 文件吗?
-
FROM php:7.3.1-fpm-stretch RUN apt-get update && apt-get install -y libmemcached-dev zlib1g-dev libssl-dev wget curl vim RUN apt-get install -y git zip unzip jpegoptim optipng pngquant gifsicle RUN apt-get update && apt-get install -y libpng-dev libjpeg62-turbo-dev libfreetype6-dev RUN docker-php-ext-install gd mbstring bcmath pdo pdo_mysql WORKDIR /usr/local/etc/php/conf.d/ RUN curl -sS https://getcomposer.org/installer | php && mv composer.phar /usr/local/bin/composer WORKDIR /var/www/html/
标签: laravel docker jenkins jenkins-pipeline dockerfile