我正在尝试在CloudRun上运行声纳。但是DockerHub上的默认映像从端口9000开始。如何修改它以使用由环境变量PORT
指定的端口?
答案 0 :(得分:1)
您可以在SonarQube安装文件夹的配置文件中更改端口。
该文件位于conf文件夹中。
路径:$ SONARQUBE-HOME / conf / sonar.properties。
在sonar.properties文件中,您可以更改默认的Web端口。
答案 1 :(得分:0)
似乎您指定的image中没有PORT的ENV。
一种映射所需主机端口的方法,例如var storageImage = new GridFsStorage({
url: dbURI,
file: (req, file) => {
return new Promise((resolve, reject) => {
crypto.randomBytes(16, (err, buf) => {
if (err) {
return reject(err);
}
const filename = buf.toString("hex") + path.extname(file.originalname);
const fileInfo = {
filename: filename,
bucketName: "user_images"
};
resolve(fileInfo);
});
});
}
});
const uploadImage = multer({ storage: storageImage });
var storageDoc = new GridFsStorage({
url: dbURI,
file: (req, file) => {
return new Promise((resolve, reject) => {
crypto.randomBytes(16, (err, buf) => {
if (err) {
return reject(err);
}
const filename = buf.toString("hex") + path.extname(file.originalname);
const fileInfo = {
filename: filename,
bucketName: "user_cv"
};
resolve(fileInfo);
});
});
}
});
const uploadDoc = multer({ storage: storageDoc });
//routes
router.post("/uploadImage", uploadImage.single("file"), (req, res) => {
console.log(req.file);
res.json({ imageId: req.file.id });
});
router.post("/uploadCV", uploadDoc.single("file"), (req, res) => {
console.log(req.file);
res.json({ cvId: req.file.id });
});
module.exports = router;
8080
或者如果要在其他端口上启动它,则需要绑定配置文件。
sonar.properties
docker run -d --name sonarqube -p 8080:9000 sonarqube
然后
sonar.web.port=8080
使用绑定安装的文件夹
图像包含位于
docker run -d --name sonarqube -v $PWD/conf/:/opt/sonarqube/conf -p 8080:8080 sonarqube
的SonarQube安装。您 需要使用绑定安装的文件夹来覆盖所选文件,或者 目录:
/ opt / sonarqube / conf:
配置文件,例如sonar.properties