通常,我在项目目录中创建一个名为“ docker”的文件夹,以便可以对不同的项目使用不同的配置。我将所有docker文件放在此文件夹中。
我已经创建了这个docker-compose文件,以与使用MySQL v5.5的项目一起使用。:
client.query(
'SELECT tag_id FROM tag WHERE tag_name IN (?)',
[tagArray],
function(err, result, fields) {
client.destroy();
if (err) {
throw err;
}
console.log(result);
res.redirect('/');
}
);
现在我需要创建另一个使用MySQL v.5.6的项目
那么,该项目应如何查找相同的文件?特别是卷,服务名称和容器名称。
谢谢。
答案 0 :(得分:0)
您可以在一个组合YAML定义中使用多个服务和卷。像这样:
version: "3"
services:
mysql-v1:
image: mysql:5.5
ports:
- 13307:3306
environment:
- MYSQL_ROOT_PASSWORD=123
volumes:
- mysqldata-v1:/var/lib/mysql
container_name: mysql-v1
mysql-v2:
image: mysql:5.6
ports:
- 13308:3306
environment:
- MYSQL_ROOT_PASSWORD=123
volumes:
- mysqldata-v2:/var/lib/mysql
container_name: mysql-v2
volumes:
mysqldata-v1:
driver: "local"
mysqldata-v2:
driver: "local"
您可以按照自己的喜好配置图像,容器名称和容量。
另一种方法是使用env vars作为参数。您可以通过以下方式配置撰写:
version: "3"
services:
mysql:
image: mysql:5.5
ports:
- ${port}:3306
environment:
- MYSQL_ROOT_PASSWORD=123
volumes:
- mysqldata:/var/lib/mysql
container_name: mysql-port-${port}
volumes:
mysqldata:
driver: "local"
然后,您所需要做的就是“导出端口= 2222”,例如将端口设置为2222,然后使用compose。这会将端口和容器名称都设置为mysql-port-2222。