@oleshkin

Куда опубликовать VueJS & .NET API?

Делаю простой бэкенд на .net6 webapi и фронт на vue3 для своего друга, чтобы вести учёт его клиентов. Поскольку делаю это впервые, то встал вопрос куда это всё запаблишить можно, чтобы бесплатно/недорого? Траффика у него будет генерироваться не много, глядишь 100мб/мес наберется с 500 вызовами апишки. Лет 10 назад можно было залить всё на хостинг через фтп :)) и всё начинало работать.

А как быть теперь? Если надо, могу и в докер всё упаковать, только всё равно не понимаю куда это всё паблишить, как хостить и тд.

Почитал про MS Azure, но там только 200 бакчинских на особые сервисы (непонятно, нужны ли они мне будут или нет) и 12мес бесплатно самых распостраненных сервисов.
Посмотрел на AWS, там вроде при определенных лимитах можно уложиться и в бесплатный пакет. Но не понимаю вообще с чего начать и как быть :). Подскажите, плиз, что вообще гуглить? Самостяотельно нахожу только списки хостингов (free/trial/paid)
  • Вопрос задан
  • 105 просмотров
Решения вопроса 1
vabka
@vabka Куратор тега .NET
Токсичный шарпист
Dotnet закидывай на vps.
А бандл с vue можно закинуть на какую-нибудь cdn.
Ещё вариант - переписать бэк под serverless, и тогда мб на малых масштабах это будет дешевле, чем vps, особенно если уложишься в ограничения.

Это если не рассматривать извращения с попыткой всё сделать бесплатно
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
https://github.com/vkorotenko/VueRecaptcha
посмотрите сюда.
это дженкинс из другого проекта
pipeline {
	agent any
	environment {
		projectKeyFront = 'kvn-yanotes-front'
		projectKeyBack = 'kvn-yanotes-back'
		VUE_APP_STS_SERVER= 'https://auth.yanotes-dev.loc'
		VUE_APP_REDIRECT_BASE = 'https://yanotes-dev.loc'
		VUE_APP_CLIENT_NAME = 'yanotes_dev'
	}

    stages {

		stage('build client app') {
			agent { 
				dockerfile { 
					filename 'Dockerfile-node'
					
				}
			}
            steps {
                sh 'cd ./YANotesServer/App/ && npm install --verbose'
				sh 'cd ./YANotesServer/App/ && npm run build'
				stash includes: 'YANotesServer/App/**/*', name: 'client-app'
				sh 'rm -rf ./YANotesServer/App'
            }
			
        }
		
		stage('build server app') {
			agent { 
				dockerfile { 
					filename 'Dockerfile-dotnet-microsoft6'
				}
			}
            steps {
				unstash 'client-app'
				
				
					sh '''
						
						dotnet publish --framework net6.0 --configuration Release --runtime centos-x64 ./YANotes.sln
						
					'''
				
				
				stash includes: 'StsServer/bin/Release/net6.0/centos-x64/publish/**/*', name: 'auth'
				stash includes: 'YANotesServer/bin/Release/net6.0/centos-x64/publish/**/*', name: 'app'
            }
        }

		stage('install systemd unit file') {
			agent any
			steps {
				sshagent(['jenkins-ci-yanotes-dev']) {
				
					sh 'scp SystemdUnitFiles/yanotes.service-Dev root@yanotes-dev.loc:/etc/systemd/system/yanotes.dev.service'
					sh 'scp SystemdUnitFiles/yanotes.auth.service-Dev root@yanotes-dev.loc:/etc/systemd/system/yanotes.auth.dev.service'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc systemctl daemon-reload'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc systemctl enable yanotes.dev'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc systemctl enable yanotes.auth.dev'
					
				}
			}
		}

		stage('deployment web application') {
			agent any
			steps {
				sshagent(['jenkins-ci-yanotes-dev']) {
					unstash 'app'
					
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc systemctl stop yanotes.dev'
					// sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc rm -rf /var/yanotes'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc  mkdir -p /var/yanotes'
					
					sh 'scp -r ./YANotesServer/bin/Release/net6.0/centos-x64/publish/* root@yanotes-dev.loc:/var/yanotes'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc systemctl start yanotes.dev'
				}
			}
		}

		stage('deployment auth application') {
			agent any
			steps {
				sshagent(['jenkins-ci-yanotes-dev']) {
					unstash 'auth'

					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc  systemctl stop yanotes.auth.dev'
					// sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc  rm -rf /var/yanotesauth'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc mkdir -p /var/yanotesauth'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc mkdir -p /var/yanotesauth/logs'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc chmod 777 /var/yanotesauth/logs'
					
					sh 'scp -r ./StsServer/bin/Release/net6.0/centos-x64/publish/* root@yanotes-dev.loc:/var/yanotesauth'
					sh 'ssh -o StrictHostKeyChecking=no root@yanotes-dev.loc  systemctl start yanotes.auth.dev'
									
				}
			}
		}

    }
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы