Added docker

This commit is contained in:
Mike Nolan 2022-05-13 20:49:10 -05:00
parent 6bc733b866
commit dad51e60c1
4 changed files with 40 additions and 31 deletions

16
Dockerfile Normal file
View File

@ -0,0 +1,16 @@
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build-env
WORKDIR /app
RUN git clone https://github.com/tesses50/tytd-2022 .
WORKDIR /app/Tesses.YouTubeDownloader.Net6
# Restore as distinct layers
RUN dotnet restore
# Build and publish a release
RUN dotnet publish -c Release -o /app/out
# Build runtime image
FROM mcr.microsoft.com/dotnet/runtime:6.0
WORKDIR /app
EXPOSE 3250
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "Tesses.YouTubeDownloader.Net6.dll","--docker"]

View File

@ -7,10 +7,15 @@ namespace Tesses.YouTubeDownloader.Net6
{
public static async Task Main(string[] args)
{
if(args.Contains("--docker"))
{
Environment.CurrentDirectory="/data";
}
TYTDCurrentDirectory currentDirectory=new TYTDCurrentDirectory(new HttpClient());
TYTDServer server=new TYTDServer(currentDirectory);
server.RootServer.Server=new StaticServer("WebSite");
currentDirectory.CanDownload=false;
HttpServerListener listener=new HttpServerListener(new System.Net.IPEndPoint(System.Net.IPAddress.Any,3252),server.InnerServer);
currentDirectory.StartLoop();
TYTDStorage.FFmpeg ="/usr/bin/ffmpeg";

View File

@ -1,12 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>

View File

@ -23,7 +23,7 @@ class TYTD
downloadItem(url,res)
{
var callurl=new URL(`api/AddItemRes/${res}/${url}`,this.server).href;
$.get(callurl,function(e){});
$.ajax(callurl,function(e){});
}
downloadItem(url)
{
@ -33,14 +33,14 @@ class TYTD
progress(p)
{
var callurl=new URL("api/v2/Progress",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
p(JSON.parse(e));
});
}
queuelist(ql)
{
var callurl=new URL("api/v2/QueueList",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
ql(JSON.parse(e));
});
}
@ -81,21 +81,21 @@ class TYTD
getvideoinfofile(filename,info)
{
var callurl=new URL(`api/Storage/File/Info/${filename}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
info(JSON.parse(e));
});
}
getchannelinfofile(filename,info)
{
var callurl=new URL(`api/Storage/File/Channel/${filename}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
info(JSON.parse(e));
});
}
getvideoinfofiles(vid)
{
var callurl=new URL("api/Storage/GetFiles/Info",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
vid(JSON.parse(e));
});
}
@ -106,28 +106,28 @@ class TYTD
getplaylistinfofile(info)
{
var callurl=new URL(`api/Storage/File/Playlist/${filename}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
info(JSON.parse(e));
});
}
getplaylistinfofiles(pl)
{
var callurl = new URL("api/Storage/GetFiles/Playlist",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
pl(JSON.parse(e));
});
}
getchannelinfofiles(chan)
{
var callurl = new URL("api/Storage/GetFiles/Channel",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
chan(JSON.parse(e));
});
}
getsubscriptions(subs)
{
var callurl = new URL("api/v2/subscriptions",this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
subs(JSON.parse(e));
});
}
@ -135,28 +135,28 @@ class TYTD
{
var ginfo = getinfo == true ? "true" : "false";
var callurl = new URL(`api/v2/subscribe?id=${encodeURIComponent(cid)}&conf=${conf}&getinfo=${getinfo}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
});
}
subscribe(name,conf)
{
var callurl = new URL(`api/v2/subscribe?id=${encodeURIComponent(name)}&conf=${conf}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
});
}
unsubscribe(cid)
{
var callurl = new URL(`api/v2/unsubscribe?id=${encodeURIComponent(cid)}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
});
}
resubscribe(cid,conf)
{
var callurl = new URL(`api/v2/resubscribe?id=${encodeURIComponent(cid)}&conf=${conf}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
});
}
@ -164,21 +164,21 @@ class TYTD
getfiles(path,ls)
{
var callurl=new URL(`api/Storage/GetFiles/${path}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
ls(JSON.parse(e));
});
}
getdirectories(path,ls)
{
var callurl=new URL(`api/Storage/GetDirectories/${path}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
ls(JSON.parse(e));
});
}
fileexists(path,exists,doesntexist)
{
var callurl=new URL(`api/Storage/FileExists/${path}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
if(e==="true")
{
exists();
@ -190,7 +190,7 @@ class TYTD
directoryexists(path,exists,doesntexist)
{
var callurl=new URL(`api/Storage/DirectoryExists/${path}`,this.server).href;
$.get(callurl,function(e){
$.ajax(callurl,function(e){
if(e==="true")
{
exists();