小编Izh*_*tem的帖子

如何使用Docker compose创建一个mysql数据库?

我正在尝试在docker上托管一个使用MySQL db的应用程序.我正在使用docker compose.我的yml文件如下所示:

version: '2'
volumes:
  data_sql:    
services:  
medical-mysql:
    image: mysql
    hostname: medical-mysql    
    volumes:    
     - data_sql:/dbcreation.sql
    environment:
      MYSQL_DATABASE: Medical
      MYSQL_ROOT_PASSWORD: root
      STARTUP_SQL: data_sql
    ports:
    - "3306:3306"
  medical-main:
    build: .
    ports:
     - "8080:8080"    
    depends_on:
     - medical-mysql
Run Code Online (Sandbox Code Playgroud)

我有一个dbcreation.sql创建数据库架构并保存在yml文件夹中.当我运行yml文件时,好像文件没有运行.

我错过了什么?

mysql docker-compose

18
推荐指数
2
解决办法
4万
查看次数

基于Vert.x的应用程序在docker容器上崩溃

我正在尝试在Docker容器上运行基于Vert.x Java的应用程序.我的应用程序运行很少的Verticle,它从内部启动.我把jar文件放在一个文件夹上并创建了一个包含以下内容的Dockerfile:

FROM vertx/vertx3
ENV VERTICLE_FILE Medical-1.0-SNAPSHOT.jar 
ENV VERTICLE_HOME /performit/web/vertx/verticles/
COPY $VERTICLE_FILE $VERTICLE_HOME/  
WORKDIR $VERTICLE_HOME
ENTRYPOINT ["sh", "-c"]
EXPOSE 8080
CMD ["java -jar $VERTICLE_FILE"]
USER daemon
Run Code Online (Sandbox Code Playgroud)

我用命令创建一个图像

$ sudo docker build -t medical-main .
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用以下行创建一个容器:

sudo docker run --name medical-main -p 8080:8080 -d  medical-main
Run Code Online (Sandbox Code Playgroud)

此操作失败,日志显示以下内容:

java.lang.IllegalStateException: Failed to create cache dir
at io.vertx.core.impl.FileResolver.setupCacheDir(FileResolver.java:257)
at io.vertx.core.impl.FileResolver.<init>(FileResolver.java:79)
at io.vertx.core.impl.VertxImpl.<init>(VertxImpl.java:138)
at io.vertx.core.impl.VertxImpl.<init>(VertxImpl.java:114)
at io.vertx.core.impl.VertxImpl.<init>(VertxImpl.java:110)
at io.vertx.core.impl.VertxFactoryImpl.vertx(VertxFactoryImpl.java:34)
at io.vertx.core.Vertx.vertx(Vertx.java:79)
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

以斯哈

java vert.x dockerfile

6
推荐指数
2
解决办法
3143
查看次数

标签 统计

docker-compose ×1

dockerfile ×1

java ×1

mysql ×1

vert.x ×1