docker-compose + mysql + java+ newman
docker-compose 启动 mysql 容器并初始化数据,部署springboot项目,执行newman接口测试
所有文件放在同一路径下:
at_collection.json , at_environment.json , import.sql , docker-compose.ym , wait-for-postgres.sh , at.Dockerfile
文章目录
docker-compose.yml
version: '3'
services:
DOCKER.MYSQL:
image: mysql:8
container_name: DOCKER.MYSQL
expose:
- 3306
restart: always
volumes:
- ./import.sql:/docker-entrypoint-initdb.d/import.sql
environment:
MYSQL_ROOT_PASSWORD: xxxxxx
command: [
'--character-set-server=utf8mb4',
'--collation-server=utf8mb4_unicode_ci',
'--default-authentication-plugin=mysql_native_password'
]
DOCKER.AT:
image: at:v3 //自备镜像
container_name: DOCKER.AT
expose:
- 8082
restart: on-failure
links:
- DOCKER.MYSQL
depends_on:
- DOCKER.MYSQL
NEWMAN:
image: dannydainton/htmlextra //可以使用官方镜像postman/newman:4代替
container_name: NEWMAN
depends_on:
- DOCKER.AT
links:
- DOCKER.AT
environment:
SLEEP_SECOND: 20
volumes:
- ./wait-for-postgres.sh:/wait-for-postgres.sh
- ./:/etc/newman
entrypoint: sh /wait-for-postgres.sh -d DOCKER.AT:8082 -c 'newman run at_collection.json -e at_environment.json -r htmlextra --reporter-htmlextra-export newman/report.html'
import.sql
使用navicat转储数据库为sql文件后,在文件头添加
-- 解决乱码问题
SET NAMES 'utf8'
//at_docker换成项目数据库
CREATE DATABASE 'at_docker' CHARACTER SET 'utf8';
USE at_docker;

本文介绍了如何利用docker-compose启动MySQL容器并初始化数据,部署Springboot应用,同时结合Newman执行接口测试。文章详细列举了涉及的配置文件,如docker-compose.yml、import.sql、应用的YAML配置以及Dockerfile。此外,还讨论了如何将这一流程集成到Jenkins中,通过jenkins-compose.yml和Jenkinsfile实现自动化测试。
最低0.47元/天 解锁文章
730

被折叠的 条评论
为什么被折叠?



