前面的部分:

Identity Server 4 从入门到落地(一)—— 从IdentityServer4.Admin开始

Identity Server 4 从入门到落地(二)—— 理解授权码模式

Identity Server 4 从入门到落地(三)—— 创建Web客户端

Identity Server 4 从入门到落地(四)—— 创建Web Api

Identity Server 4 从入门到落地(五)—— 使用Ajax 访问 Web Api

Identity Server 4 从入门到落地(六)—— 简单的单页面客户端

Identity Server 4 从入门到落地(七)—— 控制台客户端

Identity Server 4 从入门到落地(八)—— .Net Framework 客户端

Identity Server 4 从入门到落地(九)—— 客户端User和Role的解析

Identity Server 4 从入门到落地(十)—— 编写可配置的客户端和Web Api

认证服务和管理的github地址: https://github.com/zhenl/IDS4Admin

客户端及web api示例代码的github地址:https://github.com/zhenl/IDS4ClientDemo

第一部分开始使用的认证服务和管理应用都是在本地运行,本文介绍将这两部分作为Docker容器部署。这两部分的镜像已经上传到docker hub,可以使用下面的命令下载。

认证服务镜像:

docker pull zhenlei1970/ids4adminstsidentity

管理应用镜像

docker pull zhenlei1970/ids4adminadmin

这里记录一下我在阿里云ubuntu服务器上的部署过程,供大家参考。

首先是准备环境,安装MS SqlServer的docker容器。先下载sql server镜像:

docker pull mcr.microsoft.com/mssql/server:2019-latest

下载完成后,可以使用docker images查看是否下载完成。然后启动容器:

docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=123456" -u 0:0 -p 1433:1433 --name mssql -v /data:/var/opt/mssql -d mcr.microsoft.com/mssql/server:2019-latest

使用docker ps -a 查看,发现异常退出了,容器没有正常运行。使用docker logs mssql查看,发现是初始密码设置错误:初始密码必须包含大写、小写、数字和特殊字符,并且至少8位。将这个容器删除,使用新的密码再次创建新的容器,这次可以了。

如果需要从外部访问sql server,需要设置防火墙,将1433端口打开。这样可以从远程使用sql server management进行管理了。

数据库安装完成之后,可以准备部署认证服务和管理应用了。仍然需要先运行辅助工具,生成这两部分的配置文件,然后在服务器创建两个目录admin和sts,将生成的配置文件拷贝到相关目录中:



现在可以创建容器了,管理应用容器,创建时注意,映射的端口应该与生成的配置文件中的端口一致,在本例中,管理应用运行在7003端口,认证服务运行在7010端口:

docker create --name ids4admin -v /mydata/ids4/admin/log:/app/Log \
-v /mydata/ids4/admin/appsettings.production.json:/app/appsettings.json \
-v /mydata/ids4/admin/identitydata.json:/app/identitydata.json \
-v /mydata/ids4/admin/identityserverdata.json:/app/identityserverdata.json -p 7003:80 zhenlei1970/ids4adminadmin

认证服务容器:

 docker create --name ids4sts -v /mydata/ids4/sts/log:/app/Log -v /mydata/ids4/sts/appsettings.production.json:/app/appsettings.json \
-p 7010:80 zhenlei1970/ids4adminstsidentity

创建完成后,使用docker start ids4admin 和docker start ids4sts启动容器。容器启动后,可以使用docker ps查看容器的运行状况。

如果出现问题,可以使用docker logs ids4admin 和docker logs ids4sts 查看日志。现在使用浏览器访问认证服务和管理应用了。

Identity Server 4 从入门到落地(十一)—— Docker部署的更多相关文章

  1. Identity Server 4 从入门到落地(十二)—— 使用Nginx集成认证服务

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  2. Identity Server 4 从入门到落地(五)—— 使用Ajax访问Web Api

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  3. Identity Server 4 从入门到落地(四)—— 创建Web Api

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  4. Identity Server 4 从入门到落地(六)—— 简单的单页面客户端

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  5. Identity Server 4 从入门到落地(七)—— 控制台客户端

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  6. Identity Server 4 从入门到落地(八)—— .Net Framework 客户端

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  7. Identity Server 4 从入门到落地(九)—— 客户端User和Role的解析

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  8. Identity Server 4 从入门到落地(十)—— 编写可配置的客户端和Web Api

    前面的部分: Identity Server 4 从入门到落地(一)-- 从IdentityServer4.Admin开始 Identity Server 4 从入门到落地(二)-- 理解授权码模式 ...

  9. Identity Server 4 从入门到落地(一)—— 从IdentityServer4.Admin开始

    最近项目中需要使用Identity Server 4,以前对这个技术只是有些了解,没有系统研究过,网上相关的资料不少,大多是从编写一个简单的认证服务开始,离能够落地使用有相当的距离,理论学习如何不结合 ...

随机推荐

  1. Windows11 如何让开始菜单出现休眠选项(Windows11如何开启休眠功能?)Windows家庭版

    1. Windows11新版的菜单找不到调休眠的选项了,所以我们可以用win+r键调出运行,输入control,回车调出「控制面板」 配图: 2. 我的电脑系统是家庭版的Windows11,其它版本这 ...

  2. 理解ASP.NET Core - 错误处理(Handle Errors)

    注:本文隶属于<理解ASP.NET Core>系列文章,请查看置顶博客或[点击此处查看全文目录](https://www.cnblogs.com/xiaoxiaotank/p/151852 ...

  3. [luogu3706]硬币游戏

    (可以参考洛谷4548,推导过程较为省略) 定义$g_{i}$表示随机$i$次后未出现给定字符串的概率,$f_{k,i}$表示随机$i$次后恰好出现$s_{k}$(指第$k$个字符串)的概率,设两者的 ...

  4. [bzoj5294]二进制

    首先可以发现$2^k$模3意义下有循环节,也就是1,-1,1,-1--考虑对于x个1,y个0,判断是否存在3的倍数1.x为偶数时一定可以,选择等量的1和-1即可2.x为奇数,要满足$x\ge 3$且$ ...

  5. 【备考06组01号】第四届蓝桥杯JAVA组A组国赛题解

    1.填算式 (1)题目描述     请看下面的算式:     (ABCD - EFGH) * XY = 900     每个字母代表一个0~9的数字,不同字母代表不同数字,首位不能为0.     比如 ...

  6. IntelliJ IDEA 2021.3 正式发布:支持远程开发、IDE故障排查等多项优化改进

    作者:程序猿DD 博客:https://blog.didispace.com/ 昨天刚刚跟大家聊了Jetbrains即将推出轻量级编辑器Fleet,以挑战 VS Code的消息,今天又收到了Intel ...

  7. SpringSecurity+Jwt遇到的bug

    最近在使用springsecurity整合Jwt的时候,遇到了一Bug,卡住了很久,记录一下. 编写Jwt工具类JwtUtil,编写Jwt认证的核心过滤器JwtAuthenticationFilter ...

  8. Codeforces 1225G - To Make 1(bitset+状压 dp+找性质)

    Codeforces 题目传送门 & 洛谷题目传送门 还是做题做太少了啊--碰到这种题一点感觉都没有-- 首先我们来证明一件事情,那就是存在一种合并方式 \(\Leftrightarrow\) ...

  9. python-django 使用class重写视图和模板变量

    基于类的视图 c Django模板语法 两个模板引擎如何进行模板文件的查找 模板引擎都找不到的时候,就照模块里面的模板 一旦找到模板不会继续查找了 注意:img_addr是必须和视图里面的变量名字保持 ...

  10. C语言 fastq文件转换为fasta文件2

    修改可读取压缩格式文件 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #in ...