gpt4 book ai didi

docker - 关于Domjudge服务器的Docker-compose设置问题

转载 作者:行者123 更新时间:2023-12-02 19:56:30 24 4
gpt4 key购买 nike

我想在Debian9的docker中使用mriadb,phpmyadmin,法官主机构建domjudge服务器,

我已经安装了docker和docker compose
这是下面的docker-compose.yml代码。
我使用docker-compose up -d,弹出一些警告和错误。

这是整个docker-compose.yml文件的代码

http://codepad.org/souBFdFz

警告和错误消息:

WARNING: some networks were defined but are not used by any service: phpmyadmin, dj-judgedameons_1, dj-judgedameons_2

ERROR: dor domjudge_dj-judgedameons_2_1 Cannot start service dj-judgedameons_1 : OCI runtime create failed: container_linux.go:345: starting container process caused "process_linux.go:311:getting Starting domjudge_dj-judgedameons_1_1

...以及很多我什至无法阅读的错误消息(我认为是二进制代码或地址)

请帮助我修复它,或者是否有一种简单的方法可以用mariadb,phpmyadmin,法官主机设置domjudge服务器

谢谢!

更新资料

我已经试过几次这个文件,它的结果不尽相同,但仍然无法连接到服务器(domjudge和phpmyadmin)。

这是消息

/image/qDcDd.jpg

最佳答案

不幸的是,由于应用程序的构建方式,您实际上不可能做的事情:容器需要彼此等待,其中一些容器需要手动操作。

但是,这是一系列有效的操作,它将启动并运行所有容器。

注意:我删除了网络声明,因为它们没有添加任何值。

version: '3'

services:
dj-mariadb:
image: mariadb
environment:
- MYSQL_ROOT_PASSWORD=rootpw
- MYSQL_DATABASE=domjudge
- MYSQL_USER=domjudge
- MYSQL_PASSWORD=djpw
command:
--max-connections=1000

dj-domserver:
image: domjudge/domserver:latest
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
environment:
- CONTAINER_TIMEZONE=Asia/Taipei
- MYSQL_ROOT_PASSWORD=rootpw
- MYSQL_DATABASE=domjudge
- MYSQL_USER=domjudge
- MYSQL_PASSWORD=djpw
ports:
- 9090:80
links:
- dj-mariadb:mariadb
dj-judgehost:
image: domjudge/judgehost:latest
privileged: true
hostname: judgedaemon-0
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
environment:
- DAEMON_ID=0
- JUDGEDAEMON_PASSWORD=domjudge
links:
- dj-domserver:domserver
dj-judgehost_1:
image: domjudge/judgehost:latest
privileged: true
hostname: judgedaemon-1
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
environment:
- DAEMON_ID=1
- JUDGEDAEMON_PASSWORD=domjudge
links:
- dj-domserver:domserver
dj-judgehost_2:
image: domjudge/judgehost:latest
privileged: true
hostname: judgedaemon-2
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:ro
environment:
- DAEMON_ID=2
- JUDGEDAEMON_PASSWORD=domjudge
links:
- dj-domserver:domserver
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: myadmin
ports:
- 8888:80
environment:
- PMA_ARBITRARY=1
- PMA_HOST=dj-mariadb
links:
- dj-mariadb:db
  • 启动数据库并等待其初始化(否则服务器将退出,因为它找不到所需的架构)

    docker-compose up -d dj-mariadb
  • 启动服务器:

  • docker-compose up -d dj-domserver
  • 从日志中获取管理员密码:o​​jit_rli

    docker-compose logs dj-domserver

    查找以下行:Initial admin password is ....并保存密码。
  • 在Web界面中设置judgehost密码:打开http://localhost:9090并使用admin用户和您在上一步中保存的密码登录。转到Users,然后单击judgehost用户。在其中将密码更改为domjudge(根据您在docker-compose.yml中为JUDGEDAEMON_PASSWORD设置的密码。保存数据。
  • 启动其余容器:

  • docker-compose up -d
  • 确认所有容器都已启动并正在运行:

  • docker-compose ps

    输出应类似于以下内容:
              Name                         Command               State               Ports             
    ---------------------------------------------------------------------------------------------------
    domjudge_dj-domserver_1 /scripts/start.sh Up 0.0.0.0:9090->80/tcp
    domjudge_dj-judgehost_1 /scripts/start.sh Up
    domjudge_dj-judgehost_1_1 /scripts/start.sh Up
    domjudge_dj-judgehost_2_1 /scripts/start.sh Up
    domjudge_dj-mariadb_1 docker-entrypoint.sh --max ... Up 3306/tcp
    myadmin /run.sh supervisord -n -j ... Up 0.0.0.0:8888->80/tcp, 9000/tcp

    关于docker - 关于Domjudge服务器的Docker-compose设置问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57531159/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com