Ad Widget

Collapse

Docker-compose Files: Lots and lots of containers

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • jplarson
    Junior Member
    • Nov 2018
    • 4

    #1

    Docker-compose Files: Lots and lots of containers

    I'll preface this: I'm a developer, not an operations expert. I'm not remotely a docker expert, and I'm brand new to Zabbix. I'm trying to get Zabbix up in my local development area so I can begin instrumenting my app to feed it. My real questions are at the bottom.

    I've downloaded the docker-compose GitHub repo. I am looking at the file docker-compose-v3_ubuntu_pgsql_latest.yaml. I have some questions. Some stuff doesn't entirely make sense, and I think they are cut and paste facsimiles, but I could be entirely wrong.

    Note: this is a PostreSQL version.

    There are two configured zabbix-proxy containers, one for sqlite3 and one for mysql. Ug. Why two, and why sqlite and mysql, when I already need a database server with PostgreSQL anyway?

    All told, I have the following containers:

    zabbix-server, which is running zabbix/zabbix-server-pgsql:ubuntu-4.0-latest, exposes to port 10051
    zabbix-proxy-sqlite3: zabbix/zabbix-proxy-sqlite3:ubuntu-4.0-latest, exposes to port 10061
    zabbix-proxy-mysql: zabbix/zabbix-proxy-mysql:ubuntu-4.0-latest, exposes to port 10071
    zabbix-web-apache-pgsql: zabbix/zabbix-web-apache-pgsql:ubuntu-4.0-latest, exposes 80 and 443, links to Postgres-server and zabbix-server
    zabbix-web-nginx-pgsql: zabbix/zabbix-web-nginx-pgsql:ubuntu-4.0-latest, exposes to ports 8081 and 8443, links to Postgres-server and zabbix-server
    zabbix-agent: zabbix/zabbix-agent:ubuntu-4.0-latest, port 10050
    zabbix-java-gateway: zabbix/zabbix-java-gateway:ubuntu-4.0-latest, port 10052
    zabbix-snmptraps: zabbix/zabbix-snmptraps:ubuntu-4.0-latest, port 162
    mysql-server: mysql:5.7
    postgres-server: postgres:latest
    As I dig through this, I think what's going on is...

    1. There is no preconfigured zabbix-proxy container configured for PostgreSQL. This file demonstrates how to use the two that exist, and I could safely comment out one. (Or both, if I don't need the proxy.)

    This is why I have both proxies listed, and why I have a mysql container.

    2. I also see entries for both apache and nginx, but I can safely comment one out, and if I keep the nginx one, I can change the ports used.


    So my real questions:

    Do I accurately understand what's going on?

    As a developer, do I care how the proxy is configured? It's the same regardless of the datastore, and I'm NOT going to be configuring whatever gets used in production. So could I toss all references to mysql and just keep the sqlite version? This would reduce the footprint in my development environment. At least I'm on a 32-gig machine, but one of my coworker programs on a 16-gb laptop, and I want to keep anything I do in friendly mode for him.

    I've I'm right, I can ditch mysql-server, the related proxy, and nginx, then fix depends_on sections.

    Thanks.



  • jplarson
    Junior Member
    • Nov 2018
    • 4

    #2
    Let's add to this. I proceeded based on the above understanding being correct. I commented out huge chunks of the docker file, changed ports on other docker stuff I had running -- to avoid collisions on ports near 10051 -- and got stuff up. I logged into the web server as Admin. Looked great. But then after a bit, it says Zabbix agent on Zabbix server is unreachable.

    Web searches suggest this is a configuration issue -- someone doesn't know the right IP to use. But I'm not sure where to resolve it. Using this docker file, it does create ./zbx_env. The PostgreSQL files land here, and I get a directory tree, but not a single actual file to configure agents or access thereof.

    Hints?

    Comment

    Working...