No docker mode
This commit is contained in:
parent
b697a4b357
commit
56a56c6c38
|
@ -0,0 +1,7 @@
|
|||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="BlueWest-NoDocker" type="CompoundRunConfigurationType">
|
||||
<toRun name="DockerComposeDbOnly" type="ShConfigurationType" />
|
||||
<toRun name="BlueWest.Api: BlueWest.WebApi" type="LaunchSettings" />
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
|
@ -146,7 +146,7 @@ namespace BlueWest.WebApi
|
|||
.AddSingleton<EventManager>();
|
||||
|
||||
|
||||
services.AddAuthServerServices( _configuration, _environment);
|
||||
services.AddAuthServerServices( _configuration, _environment, configuration);
|
||||
services.AddScoped<ExchangeInterface>();
|
||||
|
||||
|
||||
|
|
|
@ -27,6 +27,25 @@ namespace BlueWest.WebApi
|
|||
public static class StartupExtensions
|
||||
{
|
||||
private static MySqlServerVersion GetMySqlServerVersion(int major, int minor, int build) => new (new Version(major, minor, build));
|
||||
|
||||
private static BlueWestConnectionString GetConnectionString(this IConfigurationRoot configurationRoot)
|
||||
{
|
||||
// Docker / No-Docker
|
||||
var startupMode = configurationRoot["mode"];
|
||||
|
||||
if (startupMode == "docker")
|
||||
{
|
||||
var config = configurationRoot.Get<ConnectionStringDocker>();
|
||||
return config;
|
||||
}
|
||||
else
|
||||
{
|
||||
var config = configurationRoot.Get<ConnectionStringNoDocker>();
|
||||
return config;
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get MYSQL Connection String
|
||||
|
@ -43,21 +62,9 @@ namespace BlueWest.WebApi
|
|||
var sqlVersion = GetMySqlServerVersion(8, 0, 11);
|
||||
|
||||
// Docker / No-Docker
|
||||
var startupMode = configurationRoot["mode"];
|
||||
|
||||
string mySqlConnectionString = String.Empty;
|
||||
|
||||
if (startupMode == "docker")
|
||||
{
|
||||
var config = configuration.Get<ConnectionStringDocker>();
|
||||
if(config != null) mySqlConnectionString = config.MySql;
|
||||
}
|
||||
else
|
||||
{
|
||||
var config = configuration.Get<ConnectionStringNoDocker>();
|
||||
if(config != null) mySqlConnectionString = config.MySql;
|
||||
}
|
||||
|
||||
|
||||
string mySqlConnectionString = configurationRoot.GetConnectionString().MySql;
|
||||
|
||||
if (mySqlConnectionString == string.Empty)
|
||||
{
|
||||
throw new InvalidOperationException("Fatal error: MySQL Connection string is empty.");
|
||||
|
@ -131,12 +138,18 @@ namespace BlueWest.WebApi
|
|||
|
||||
}
|
||||
|
||||
internal static IServiceCollection AddAuthServerServices(this IServiceCollection services, IConfiguration configuration , IWebHostEnvironment environment)
|
||||
internal static IServiceCollection AddAuthServerServices(this IServiceCollection services, IConfiguration configuration , IWebHostEnvironment environment, IConfigurationRoot configurationRoot)
|
||||
{
|
||||
|
||||
var connectionString = configurationRoot.GetConnectionString();
|
||||
|
||||
if (connectionString == null)
|
||||
{
|
||||
throw new InvalidOperationException("Redis connection string is empty");
|
||||
}
|
||||
|
||||
services
|
||||
.AddSingleton(new RedisConnectionProvider("redis://redisinstance:6379"))
|
||||
.AddSingleton(new RedisConnectionProvider(connectionString.Redis))
|
||||
.AddScoped<IJwtTokenHandler, JwtTokenHandler>()
|
||||
.AddScoped<IJwtFactory, JwtFactory>()
|
||||
.AddHostedService<SessionDataService>()
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{
|
||||
"mode": "docker",
|
||||
"mode": "no-docker",
|
||||
"database": "sqlite",
|
||||
"environment": "dev"
|
||||
}
|
Binary file not shown.
|
@ -1,29 +1,22 @@
|
|||
version: '3'
|
||||
services:
|
||||
db:
|
||||
container_name: BW1_DB_MYSQL
|
||||
container_name: BW1_MYSQL
|
||||
image: mysql/mysql-server:8.0
|
||||
environment:
|
||||
MYSQL_ROOT_HOST: db
|
||||
MYSQL_USER_HOST: db
|
||||
MYSQL_ROOT_HOST: localhost
|
||||
MYSQL_USER_HOST: localhost
|
||||
MYSQL_ROOT_PASSWORD: dXjw127124dJ
|
||||
MYSQL_USER: blueuser
|
||||
MYSQL_PASSWORD: dXjw127124dJ
|
||||
MYSQL_DATABASE: bluedb
|
||||
ports:
|
||||
- "3306:3306"
|
||||
volumes:
|
||||
- ./docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/
|
||||
phpmyadmin:
|
||||
container_name: BW_PHPMYADMIN
|
||||
image: phpmyadmin/phpmyadmin
|
||||
ports:
|
||||
- 80:80
|
||||
environment:
|
||||
MYSQL_USERNAME: 'blueuser'
|
||||
MYSQL_ROOT_PASSWORD: 'dXjw127124dJ'
|
||||
# ports:
|
||||
# - "3308:3306"
|
||||
redis:
|
||||
image: "redis:alpine"
|
||||
command: redis-server
|
||||
|
||||
redisinstance:
|
||||
image: "redislabs/redismod"
|
||||
ports:
|
||||
- "6379:6379"
|
||||
container_name: BW1_REDIS
|
||||
|
|
Loading…
Reference in New Issue