# hrl4ehm **Repository Path**: jiangwenqi_admin/hrl4ehm ## Basic Information - **Project Name**: hrl4ehm - **Description**: 晶核强化模拟器 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2023-09-04 - **Last Updated**: 2023-09-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 联系作者 18930384485 环境其他组件用docker 启动 ```bash docker run --name redis --restart=always -d -p 6379:6379 redis ``` ```bash docker run --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=aa12345678 -dit mysql:latest ``` 环境依赖初始化 ``` pip install -r requirements.txt ``` 每次更新,在开发环境执行: ``` python manage.py makemigrations python manage.py migrate ``` 合并静态文件: ```bash python manage.py collectstatic ``` 在生产环境执行: ``` python manage.py migrate ``` 创建超级用户 ``` python manage.py createsuperuser ``` 启动程序 ``` python manage.py runserver ``` 访问后台管理用户 http://127.0.0.1:8000/admin/ ``` myproject/ │ ├── myproject/ # 主项目目录 │ ├── settings.py # 项目设置 │ ├── urls.py # 项目主URL配置 │ └── wsgi.py │ ├── users/ # 用户相关的API │ ├── migrations/ │ ├── serializers.py # DRF序列化器 │ ├── views.py # API视图 │ ├── urls.py # API端点URL │ └── models.py │ ├── predict/ # 预测相关的API │ ├── migrations/ │ ├── serializers.py │ ├── views.py │ ├── urls.py │ └── models.py │ └── manage.py ``` 开发后修改了代码,需要重新打镜像,提交到镜像仓库 ```bash docker build -t registry.cn-shanghai.aliyuncs.com/jwq_repo/public:enhancement_v1.0 . docker push registry.cn-shanghai.aliyuncs.com/jwq_repo/public:enhancement_v1.0 ``` docker compose 启动 ```bash docker-compose up -d ``` 如果因为启动顺序,导致数据没有初始化成功 ,可以单独启动初始化的服务 ```bash docker-compose up -d init ``` 等数据库都初始化好了后 启动主程序: ```bash docker-compose up -d web ``` 如果你想停止在后台运行的容器,你可以使用: 这个命令会停止并删除所有由 docker-compose 创建的容器,网络和其他相关资源。 ```bash docker-compose down ``` 如果你只想停止容器而不删除它们,可以使用: ```bash docker-compose stop ``` 如果要再次启动这些容器,只需使用: ```bash docker-compose start ``` 但请注意,start 只会启动已经存在的容器,而 up 会根据 docker-compose.yml 文件创建或重建容器。 在不修改docker-compose.yml 的时候,没必要up命令 运行阶段,可以通过 以下命令查看docker compose的相关服务状态 ```bash docker-compose ps ``` 通过compose 查看日志: ```bash docker-compose logs mysql ``` 通过compose 进入容器: ```bash docker-compose exec mysql bash ``` 如果你只想更新`web`服务,并且不想影响其他服务(如`mysql`),你可以单独对`web`服务执行操作。以下是如何做到这一点的步骤: 1. **停止`web`服务**: ```bash docker-compose stop web ``` 2. **删除`web`服务的旧容器**: ```bash docker-compose rm -f web ``` 3. **重新启动`web`服务**:这会基于新镜像重新创建并启动`web`服务的容器。 ```bash docker-compose up -d web ``` 这样,只有`web`服务会被重启,其他服务(如`mysql`)会保持运行状态,不会受到影响。