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

科技资讯 投稿 27600 0 评论

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

    sudo apt update

二、安装docker

    sudo apt install docker.io

三、在docker中安装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;

 

拉去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镜像

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开发的后台管理平台,开原地址

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

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


 


            
            

编程笔记 » ubuntu20安装docker/redis/mysql及部署net6应用

赞同 (133) or 分享 (0)
游客 发表我的评论   换个身份
取消评论

表情
(0)个小伙伴在吐槽