我已经用下面的docker-composer.yml安装了3个docker容器
version: '3'
services:
nginx:
image: nginx:alpine
volumes:
- ./app:/app
- ./nginx-config/:/etc/nginx/conf.d/
ports:
- 80:80
depends_on:
- php
php:
image: php:7.1-fpm-alpine
volumes:
- ./app:/app
cassandra:
image: 'docker.io/bitnami/cassandra:3-debian-10'
ports:
- '7000:7000'
- '9042:9042'
volumes:
- ./app:/app
environment:
- CASSANDRA_SEEDS=cassandra
- CASSANDRA_PASSWORD_SEEDER=yes
- CASSANDRA_PASSWORD=cassandra我的问题是如何放置localhost:7000,甚至是localhost:9042都不工作。当我运行docker ps时,所有容器都工作得很好
发布于 2020-07-08 02:14:28
您在浏览器上使用的两个端口都不是HTTP端口。
- '7000:7000'
- '9042:9042'默认情况下,Cassandra使用7000进行集群通信(如果启用了
,则为7001),9042用于本地协议客户端,7199用于JMX。节点间通信和本地协议端口可在Cassandra配置文件中配置。JMX端口可以在cassandra-env.sh中配置(通过JVM选项)。所有端口都是TCP。
您可以从内部容器验证cassandra状态或连接性,或者需要在主机上安装客户端以检查连接性。
运行docker ps并复制cassandra容器名称,然后运行下面的命令。
docker exec -it container_name bash -c "cqlsh -u cassandra -p cassandra"您可以期望输出如下所示
[cqlsh 5.0.1 | Cassandra 3.11.6 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.https://stackoverflow.com/questions/62780525
复制相似问题