首页 > 数据库 >ubuntu20安装docker、redis、mysql及部署net6应用

ubuntu20安装docker、redis、mysql及部署net6应用

时间:2023-05-02 09:44:08浏览次数:54  
标签:myredis -- redis conf mysql net6 docker

一、更新系统软件包索引

  sudo apt update

二、安装docker

  sudo apt install docker.io

三、在docker中安装Mysql

  拉取mysql镜像

  docker pull mysql:latest

  查看镜像

  docker pull mysql:latest

  运行容器

  docker run -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql-latest mysql

  参数说明:

  • -i:以交互模式运行,通常配合-t
  • -t:为容器重新分配一个伪输入终端,通常配合-i
  • -d:后台运行容器
  • -p:端口映射,格式为主机端口:容器端口
  • -e:设置环境变量,这里设置的是root密码
  • --name:设置容器别名

  进入容器测试连接Mysql

  docker exec -it mysql-latest /bin/bash
  mysql -u root -p 输入运行容器的mysql密码

 

使用Navicat测试连接到Mysql服务

出现错误提示:2059 - Authentication plugin 'caching_sha2_password' cannot be loaded: dlopen(../Frameworks/caching_sha2_password.so, 2): image not found

解决办法:

将 MySQL 8.0 的身份认证插件改回为 mysql_native_password

修改 身份认证插件为 mysql_native_password

  ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';  

刷新权限

  FLUSH PRIVILEGES;

 

四、在docker中安装redis

  拉去redis镜像

  docker pull redis

  启动容器

  docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/redis/myredis/myredis.conf:/etc/redis/redis.conf -v /home/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 你的密码

  参数说明:

  • –restart=always 总是开机启动
  • –log是日志方面的
  • -p 6379:6379 将6379端口挂载出去
  • –name 给这个容器取一个名字
  • -v 数据卷挂载
  • /home/redis/myredis/myredis.conf:/etc/redis/redis.conf 这里是将 liunx 路径下的myredis.conf 和redis下的redis.conf 挂载在一起。
  • /home/redis/myredis/data:/data 这个同上
  • -d redis 表示后台启动redis
  • redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录 /etc/redis/redis.conf 也就是liunx下的/home/redis/myredis/myredis.conf
  • appendonly yes 开启redis 持久化
  • requirepass 密码 设置密码

五、部署net6应用

  安装Net6镜像

  docker pull mcr.microsoft.com/dotnet/aspnet:6.0

  上传发布后的相关文件

  spc 本地打包后的文件位置 root@IP地址:/home

  构建镜像

  docker build -t 项目名称例如:fytsoa .

  运行容器

  docker run --name=fytsoa -p 5100:80 -d fytsoa

至此所有运行环境及应用安装、部署完成
下面是安装成功后所看到的镜像以及容器
  docker images

  docker ps


  Dockerfile文件内容
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS runtime
WORKDIR /app
COPY . /app
ENTRYPOINT ["dotnet", "FytSoa.ApiService.dll"]

    分享一个基于Net6+SCUI开发的后台管理平台,开原地址

  GitHub:https://github.com/feiyit/fytsoa

  Gitee:https://gitee.com/feiyit/fytsoa

  Net6 Swagger增强UI:https://gitee.com/feiyit/fytapi.mui


 


标签:myredis,--,redis,conf,mysql,net6,docker
From: https://www.cnblogs.com/fuyu-blog/p/17367321.html

相关文章

  • 【MySQL必知必会】初探MySQL到使用
     【MySQL必知必会】初探MySQL到使用   目录前言MySQL是什么?MySQL版本表的概念表中的列和数据类型行主键什么是SQL实践操作小结 前言周所周知MySQL已成为全世界最受欢迎的数据库之一。无论你用的何种编程语言在开发系统,数据库基本上都是必不可少的。......
  • 【必知必会的MySQL知识】②使用MySQL
    目录前言启动MySQL服务连接MySQLMySQL数据库基本命令小结前言根据上一篇文章【必知必会的MySQL知识】①初探MySQL的内容,想必您对MySQL数据库有了一个整体的了解了,并且应该在自己电脑上已经安装上了MySQL。这一篇呢我们来说一说这么连接上数据库并且使用它。启动MySQL服务前面......
  • 【必知必会的MySQL知识】①初探MySQL
    目录前言MySQL是什么?MySQL版本表的概念表中的列和数据类型行主键什么是SQL实践操作小结前言周所周知MySQL已成为全世界最受欢迎的数据库之一。无论你用的何种编程语言在开发系统,数据库基本上都是必不可少的。无论是小型项目开发如我们开发一个个人博客系统,还是构建那些声名显赫......
  • MySQL学习笔记:基于GTID的主从复制
    GTID的主从复制背景GTID出现之前,在一主多从的复制拓扑中,如果主库宕机,需要从多个从库选择之一作为新主库,这个过程比较复杂。没有一种直接了当的方法找到其它从库对应的新主库二进制日志坐标。通常的做法是先要寻找每个从库复制原主库的最后语句,然后找到新主库中包含该语句的二进制......
  • MySQL 5.7 安装
    MySQL安装1下载解压版文件2配置环境变量3新建my.ini文件[client]port=3306default-character-set=utf8[mysqld]#设置为自己的mysql的安装目录basedir=D:\Mysql\mysql-5.7.19-winx64\#设置为mysql的数据目录datadir=D:\Mysql\mysql-5.7.19-winx64\data\port=330......
  • MySQL DDL表操作
    一、查询创建1、查询当前数据库所有表showtables;2、查看指定表结构desc表名;通过这条指令,我们可以查看到指定表的字段,字段的类型、是否可以为NULL,是否存在默认值等信息。3、查询指定表的建表语句showcreatetable表名;通过这条指令,主要是用来查看建表语句的,而有部分参数......
  • mysql 事务的隔离级别、MVCC
    《凤凰架构》一书中对事务的隔离级别以及事务的定义很清晰https://www.cnblogs.com/suBlog/p/16592859.html总结写锁:排他锁,其他事务不能写入数据,也不能施加读锁(可读,但是不可加读锁)读锁:共享锁,多个事务可以同时施加读锁,但是其他事务不能写入数据范围锁:不能修改范围内已有的数据......
  • mysql -- 存储过程
    存储过程如果需要在MySQL中执行一系列语句,可以将所有语句封装在单个程序中,并在需要的时候调用这个程序,而不是每次发送所有SQL语句。存储过程处理的是一组SQL语句,且没有返回值。除了SQL语句,还可以使用变量来存储结果并在存储过程中执行程序化的内容。例如可以使用if,case语句、......
  • 快速实现 MySQL 主从复制
    MySQL主从复制是一个异步的复制过程,底层是基于Mysql数据库自带的二进制日志功能。就是一台或多台MySQL数据库(Slave库)从另一台MySQL数据库(master库)进行日志的复制,然后再解析日志并应用到自身,最终实现从库的数据和主库的数据保持一致。MySQL主从复制是MySQL数据库自带功能,无......
  • 一天吃透Redis面试八股文
    Redis连环40问,绝对够全!Redis是什么?Redis(RemoteDictionaryServer)是一个使用C语言编写的,高性能非关系型的键值对数据库。与传统数据库不同的是,Redis的数据是存在内存中的,所以读写速度非常快,被广泛应用于缓存方向。Redis可以将数据写入磁盘中,保证了数据的安全不丢失,而且Redis......