-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
在PaaS平台部署docker镜像失败 #10
Comments
应该是SERVER变量要设为那个对外的地址xxx.code.run,等我试试 |
我试了,可以,我是先挂了一个盘,/dist-external,端口设为5577
|
但是好像有网络限制?我试了连不上外部ssh |
我再试试看。不至于啊,我之前用这个容器搭了一个简易的webssh服务,是可以连外部ssh的 |
这一步是怎么操作的,请指教 |
volumes设置里 |
看到了 谢谢 |
非常感谢,已部署成功,并成功连上vps |
请问怎么设置访问网络权限的?是付费用户吗? |
我是免费用户啊,我没有做任何其他设置,通过nf分配的域名就可以访问web版并连接ssh。 |
哦,我就加了一个地方的设置,健康检查,检查路径为/,检查端口为5577。这应该跟网络没啥关系吧。 |
https://et-out--electerm--sykk8bwr425w.code.run 这是我部署出来的,平台分配的地址,完全正常,除了不能保存设置 这是我的自定义域,就只显示一个logo,无法进入操作界面 |
玄学了,我今天下午部署好的时候,在电脑上用Chrome浏览器都是可以连ssh的。刚刚用手机连接试了一下,出现跟你同样的问题,没有网络权限,只能本地连接。这真是奇怪了。。。设置不能保存的问题,刚刚在手机上又可以保存了。。。太玄学了 等你进一步更新镜像版。。。期待 补充:应该是手机浏览器的问题。刚刚又测试了,电脑上chrome浏览器可以正常连接ssh,并且设置也可以保存了 |
注意安全啊,如果在公开网络上使用,至少设置登录
|
感谢提醒,我也发现了这个问题,没有密码,任何人都可以远程登录我部署的项目。。。 这个secret和pass有什么区别。pass我知道是打开web版所需要的密码,secret是干什么用的,是访问容器本身所需要的密钥吗? |
另外,你说的网络权限的问题,我复现了。 |
secret是加密的密匙 |
大佬,又来麻烦你了。。。electerm支持命令行操作吗? |
这个需求更适合写一个简单的web服务来做,可以让AI来写 "write a simple expressjs app, /api/run-cmd API would use basic auth, to get cmd from user ,then run cmd with exec, should read username/password from .env" .env USERNAME=xxxx
PASSWORD=yyyy app.js const express = require('express');
const app = express();
const basicAuth = require('express-basic-auth');
const { exec } = require('child_process');
const dotenv = require('dotenv');
dotenv.config(); // Load environment variables from .env file
// Set up basic auth middleware
const auth = basicAuth({
users: {
[process.env.USERNAME]: process.env.PASSWORD
},
challenge: true,
realm: 'My App'
});
// Apply basic auth middleware to the /api/run-cmd route
app.use('/api/run-cmd', auth);
// Route to run commands
app.get('/api/run-cmd', (req, res) => {
const cmd = req.query.cmd;
if (!cmd) {
return res.status(400).json({ error: 'No command provided' });
}
exec(cmd, (error, stdout, stderr) => {
if (error) {
return res.status(500).json({ error: `Error executing command: ${error.message}` });
}
if (stderr) {
return res.status(200).json({ stdout, stderr });
}
res.status(200).json({ stdout });
});
});
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`Server is running on port ${port}`);
}); |
非常感谢。。。膜拜 |
我在 https://app.northflank.com/ 这个PaaS平台,通过拉取镜像的方式部署失败
镜像地址:https://hub.docker.com/r/zxdong262/electerm-web
错误信息为:
按照文档,端口设置为 8082
是否还有其他必须设置的环境变量?
大佬能帮我看看是什么原因吗?
补充一下,部署日志正常,全文如下:
The text was updated successfully, but these errors were encountered: