首页 > 数据库 >docker搭建django+mysql

docker搭建django+mysql

时间:2023-02-10 10:14:22浏览次数:47  
标签:容器 django mysql docker root drf

1.本机项目迁移到linux系统中

2.编写dockerfile内容如下

 

 

  WOEKDIR 在容器中创建该目录

  COPY 复制本机当前目录下的requirements.txt文件 到容器drfproject目录中

  COPY . ./   复制本机当前目录下的所有文件 到容器当前目录中

 

 3.编写docker-compose.yml文件 集成django以及mysql

  

 

 

 4.修改django中setting的配置

  

  

  host 栏 必须填写 docker-compse中services下 定义的服务名称

 

 

5.输入命令docker-compose up -d  运行容器

6.进入mysql容器中

  docker exec -it db bash

  登录mysql   mysql -uroot -p

  因为django要初始化数据表,因此要设置允许django链接mysql远程登录 root权限

      

    可以看到% root 没有权限 %的意思就是其他用户远程登录root访问数据库,对应IP地址,执行以下语句 给予权限

     GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

 7. 进入到django容器中,初始化数据表

  docker exec -it django-web-1 /bin/bash  

  执行python manage.py migrate

8.删除django 容器 重新执行docker-compose up -d 构建新djnago容器

  因为docker-compose 构建镜像,执行容器时,db数据库存在后构建的情况下, 导致django 连接不上数据库,所以需要重新构建django 容器

至此django+mysql项目就搭建完成了

mysql数据迁移

  进入mysql容器 bash环境

    mysqldump -u root -p  drf_django > /var/lib/mysql/drf_django.sql;

  迁移出数据

  然后在新的mysql中 新建一个drf_django数据库,然后使用命令导入数据

    mysql -u root -p drf < /var/lib/mysql/drf_django.sql 

标签:容器,django,mysql,docker,root,drf
From: https://www.cnblogs.com/7dao/p/17107939.html

相关文章

  • Docker数据管理与网络通信dockerfile
    目录:Docker复习基础Docker数据管理1、数据卷2、数据容器端口映射容器互联(使用centos镜像)Docker镜像的创建1、基于现有镜像创建2、基于本地模板创......
  • jenkins操作mysql
    1、安装mysql所需插件【系统管理】-【插件管理】-【可选插件】处下载安装database与MySQLDatabasePlugin插件。若是无法连接外网,也可通过【系统管理】-【插件管理......
  • docker管理基础笔记
    CMD指令     Dockerfile中可以有多个CMD指令,但只有最后一个生效,CMD会被dockerrun之后的参数替换掉      ENTRYPOINT指令     有别于CMD......
  • MySQL 查询数据容量
    SELECTtable_schemaAS'数据库',table_nameAS'表名',table_rowsAS'记录数',TRUNCATE(data_length/1024/1024,2)AS'数据容量(MB)',......
  • MySQL迁移丢失数据的问题的可能因素
    1.sql语句过大,导致插入失败,引起迁移时数据丢失的问题迁移数据时发现数据丢失现象,排查后找到了丢失的数据,检查数据时发现有一个字段用了longtext类型,这个字段内存入了大......
  • Dockerfile构建镜像
    一、构建Apache镜像cd/opt/#建立工作目录mkdir/opt/apachecdapache/vimDockerfile#基于的基础镜像FROMcentos:7#维护镜像的用户信息MAINTAINERthisisap......
  • Docker-harbor私有仓库
    一、Harbor概述1、Harbor的概念•Harbor是VMware公司开源的企业级DockerRegistry项目,其目标是帮助用户迅速搭建一个企业级的DockerRegistry服务•Harbor以Docker......
  • 关于MySQL数据存储,你了解多少?
    前言大家都知道MySQL的数据都是保存在磁盘的,那具体是保存在哪个文件呢?MySQL存储的行为是由存储引擎实现的,MySQL支持多种存储引擎,不同的存储引擎保存的文件自然......
  • 彻底掌握 MySQL InnoDB 的锁机制
    本文是对沈剑大佬锁机制十多篇文章的概括总结,文末有全部链接,还参考了10多位其他网友的优秀分享。1、概要MySQL中的锁可以按照粒度分为锁定整个表的表级锁(table-le......
  • Docker基本使用
    回顾一下Docker的安装和一些简单的使用安装本人基于Fedora36系统,所以都是基于linux安装。(强烈推荐Fedora,一步到位,而且安装的是最新版本,最大程度减少配置环境的时......