osixia / docker-phpLDAPadmin

phpLDAPadmin container image 🐳🌴
MIT License
844 stars 197 forks source link

Add customize ldap port support #13

Closed dengshuan closed 8 years ago

dengshuan commented 8 years ago

Hi, could you add customize ldap port support as documented here

osixia commented 8 years ago

Hi, it's already possible :)

in env.yaml set something like :

PHPLDAPADMIN_LDAP_HOSTS:
  - ldap.example.org:
    - server:
      - port: 9879

or on docker run : sudo docker run --env PHPLDAPADMIN_LDAP_HOSTS="[{'ldap.example.org': [{'server': [{'port': 9879}]}]}]" -d osixia/phpldapadmin

Please see README.md for more help (note in the next release the --env option will change but it will be documented)

Eliav2 commented 1 year ago

could you provide a complete docker-compose.yaml with the option to edit the port number? currently i have

version: "3"

services:
  ldap:
    image: bitnami/openldap
    container_name: my-bitnami-ldap
    environment:
      - LDAP_ADMIN_PASSWORD=adminpassword
      - LDAP_ADMIN_USERNAME=admin
      - LDAP_USERS=user01,user02
      - LDAP_PASSWORDS=password1,password2
      - LDAP_TLS=false
      - LDAP_PORT_NUMBER=1389
      - LDAP_LDAPS_PORT_NUMBER=636
    volumes:
      - bitnami_ldap_data:/bitnami/openldap
    ports:
      - "1389:1389"
      - "636:636"
    networks:
      - my-network

  ldap-admin:
    image: osixia/phpldapadmin
    container_name: my-ldap-admin-bitnami-setup
    environment:
      # PHPLDAPADMIN_LDAP_HOSTS: "#PYTHON2BASH:[{'localhost': [{'server': [{'tls': False}, {'port': 1389}]}]}]"
      - PHPLDAPADMIN_LDAP_HOSTS=ldap
      - PHPLDAPADMIN_HTTPS=false
      - PHPLDAPADMIN_LDAP_HOSTS:
        - ldap.example.org:
          - server:
            - port: 1389
      # - PHPLDAPADMIN_LDAP_HOSTS=[{'ldap.example.org': [{'server': [{'port': 1389}]}]}]
      # - LDAP_PORT_NUMBER=1389
      # - LDAP_LDAPS_PORT_NUMBER=1636
    ports:
      - "8080:80"
    networks:
      - my-network

volumes:
  bitnami_ldap_data:

networks:
  my-network:

which of course does not work

flavienbwk commented 6 months ago

For those still getting into this issue, use the following syntax (put this wtf PYTHON2BASH flag in the env):

docker run --env PHPLDAPADMIN_LDAP_HOSTS="#PYTHON2BASH:[{'ldap.example.org': [{'server': [{'tls': True}]},{'login': [{'bind_id': 'cn=admin,dc=example,dc=org'}]}]}, 'ldap2.example.org', 'ldap3.example.org']" --detach osixia/phpldapadmin:0.9.0
kizux commented 3 months ago

Hey @Eliav2 , if you still have interest to use it with docker-compose yaml file, you have to not use any spaces characters :

environment:
      - PHPLDAPADMIN_LDAP_HOSTS=#PYTHON2BASH:[{"ldap-server":[{"server":[{"port":1389}]}]}]

Will generate config.php as follow :

/*
 * Autogenerated servers variables will come here
 */
$servers->newServer('ldap_pla');
$servers->setValue('server','host','ldap-server');
$servers->setValue('server','name','ldap-server');
$servers->setValue('server','port','1389');