#docker #cassandra #bitbucket #testcontainers
Вопрос:
У меня есть тесты Scala, которые требуют, чтобы докер кассандра была запущена и запущена.
Я получаю один из них в зависимости от конфигурации
Container 'Build' exceeded memory limit.
Container 'docker' exceeded memory limit.
- Контейнер Кассандры ООМ
Ответ №1:
В конце концов, это была конфигурация кассандры для победы, а также набор конфигураций bitbucket:
- переменные cassandra env, заданные для тестовых контейнеров, но могут быть переданы docker любым другим способом
val container: CassandraContainer = CassandraContainer()
container.container.addEnv("JVM_OPTS", "-Xms1024M -Xmx1024M")
container.container.addEnv("HEAP_NEWSIZE", "128M")
container.container.addEnv("MAX_HEAP_SIZE", "2048M")
container.start()
- трубопроводы bitbucket
options:
docker: true
size: 2x # Increase max size to 8GB
definitions:
services:
docker:
memory: 4096 # Give 4 to docker
...
- step:
name: run the tests
caches:
- sbt
- ivy2
script:
- export TESTCONTAINERS_RYUK_DISABLED=true
# Limit sbt memory usage
- export SBT_OPTS="-Xms1024m -Xmx1024m -XX: CMSClassUnloadingEnabled -Xss4m -XX: UseConcMarkSweepGC"
- sbt -v scalafmtSbtCheck scalafmtCheck compile test
services:
- docker