я получил
CWWKS1100A: Authentication did not succeed for user ID admin. An invalid user ID or password was specified.
при попытке войти в консоль веб-сайта IBM MQ. Согласно настройке, IBM MQ успешно работает как образ Docker (в трассировке стека я получаю — веб-сервер запущен). Я могу открыть в браузере (GOOGLE Chrome) URL-адрес изображения докера, например https://localhost:8031/ibmmq/console/login.html
, но если я попытаюсь войти в систему с помощью учетных данных, таких как пользователь: admin и пароль: passw0rd, я получу сообщение об ошибке. Приложение создано с использованием Java и Spring Boot. Операционная система моего компьютера — Windows 11 Home.
Это docker-compose.yml
важная часть:
version: '3.8'
name: 'ekkv-devkit-localenvironment'
volumes:
ekkv-volume-pgsql:
networks:
ekkv-network:
name: 'ekkv-network'
services:
ibmmq:
image: icr.io/ibm-messaging/mq:latest
container_name: 'ekkv-devkit-ibmmq'
volumes:
- type: bind
source: "./.docker/ibmmq/20-config.mqsc"
target: /etc/mqm/20-config.mqsc
read_only: true
bind:
create_host_path: false
environment:
- LICENSE=accept
- MQ_QMGR_NAME=QM1
ports:
- "8014:1414"
- "8031:9443"
networks:
- ekkv-network
(*other services (pgsql, mockserver, rabbitmq)
Это содержание ./.docker/ibmmq/20-config.mqsc
ALTER QMGR MAXMSGL(104857600)
ALTER CHANNEL(SYSTEM.AUTO.SVRCONN) CHLTYPE(SVRCONN) MAXMSGL(104857600)
ALTER CHANNEL(DEV.ADMIN.SVRCONN) CHLTYPE(clntconn) MAXMSGL(104857600)
DEFINE QLOCAL(Q.PSB.01.EKKV2.REQUEST) MAXMSGL(104857600) REPLACE
DEFINE QLOCAL(Q.PSB.02.EKKV2.REQUEST) MAXMSGL(104857600) REPLACE
Это содержание /etc/mqm/20-config.mqsc
ALTER QMGR MAXMSGL(104857600)
ALTER CHANNEL(SYSTEM.AUTO.SVRCONN) CHLTYPE(SVRCONN) MAXMSGL(104857600)
ALTER CHANNEL(DEV.ADMIN.SVRCONN) CHLTYPE(clntconn) MAXMSGL(104857600)
DEFINE QLOCAL(Q.PSB.01.EKKV2.REQUEST) MAXMSGL(104857600) REPLACE
DEFINE QLOCAL(Q.PSB.02.EKKV2.REQUEST) MAXMSGL(104857600) REPLACE
Это application.yml
важная часть:
ibm:
mq:
queue-manager: QM1
channel: DEV.ADMIN.SVRCONN
conn-name: localhost(8014)
user: admin
password: passw0rd
Соответствующая информация об образе докера:
ekkv-devkit-ibmmq
icr.io/ibm-messaging/mq:latest
0d8e6a56028f
8014:1414
8031:9443
STATUS: running
Это конец трассировки стека:
2024-04-03T06:33:23.581836867Z 2024-04-03T06:33:23.581Z Started web server
2024-04-03T06:33:28.085684593Z 2024-04-03T06:33:27.954Z CWPKI0803A: SSL certificate created in 6.882 seconds. SSL key file: /mnt/mqm/data/web/installations/Installation1/servers/mqweb/resources/security/key.jks
2024-04-03T06:33:28.085768647Z 2024-04-03T06:33:27.955Z Successfully loaded default keystore: /mnt/mqm/data/web/installations/Installation1/servers/mqweb/resources/security/key.jks of type: JKS
2024-04-03T06:33:28.586619511Z 2024-04-03T06:33:28.172Z CWWKO0219I: TCP Channel defaultHttpEndpoint-ssl has been started and is now listening for requests on host * (IPv4) port 9443.
2024-04-03T06:33:28.586690985Z 2024-04-03T06:33:28.182Z CWWKT0016I: Web application available (default_host): https://b33634fc62f5:9443/ibmmq/console/
2024-04-03T06:33:28.586703826Z 2024-04-03T06:33:28.193Z CWWKT0016I: Web application available (default_host): https://b33634fc62f5:9443/ibmmq/rest/
2024-04-03T06:33:28.586714622Z 2024-04-03T06:33:28.201Z CWWKT0016I: Web application available (default_host): https://b33634fc62f5:9443/ibmmq/console/internal/
CWWKS1100A: Authentication did not succeed for user ID admin. An invalid user ID or password was specified.
Docker обновлен до последней версии (25.0.3) с типом ОС Linux. Вот полная информация:
Client:
Version: 25.0.3
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.12.1-desktop.4
Path: C:\Program Files\Docker\cli-plugins\docker-buildx.exe
compose: Docker Compose (Docker Inc.)
Version: v2.24.6-desktop.1
Path: C:\Program Files\Docker\cli-plugins\docker-compose.exe
debug: Get a shell into any image or container. (Docker Inc.)
Version: 0.0.24
Path: C:\Program Files\Docker\cli-plugins\docker-debug.exe
dev: Docker Dev Environments (Docker Inc.)
Version: v0.1.0
Path: C:\Program Files\Docker\cli-plugins\docker-dev.exe
extension: Manages Docker extensions (Docker Inc.)
Version: v0.2.22
Path: C:\Program Files\Docker\cli-plugins\docker-extension.exe
feedback: Provide feedback, right in your terminal! (Docker Inc.)
Version: v1.0.4
Path: C:\Program Files\Docker\cli-plugins\docker-feedback.exe
init: Creates Docker-related starter files for your project (Docker Inc.)
Version: v1.0.1
Path: C:\Program Files\Docker\cli-plugins\docker-init.exe
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
Version: 0.6.0
Path: C:\Program Files\Docker\cli-plugins\docker-sbom.exe
scout: Docker Scout (Docker Inc.)
Version: v1.5.0
Path: C:\Program Files\Docker\cli-plugins\docker-scout.exe
Server:
Containers: 4
Running: 4
Paused: 0
Stopped: 0
Images: 9
Server Version: 25.0.3
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 1
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: ae07eda36dd25f8a1b98dfbf587313b99c0190bb
runc version: v1.1.12-0-g51d5e94
init version: de40ad0
Security Options:
seccomp
Profile: unconfined
Kernel Version: 5.15.146.1-microsoft-standard-WSL2
Operating System: Docker Desktop
OSType: linux
Architecture: x86_64
CPUs: 16
Total Memory: 7.463GiB
Name: docker-desktop
ID: 52f155df-3e5c-429f-bfda-179556b2411a
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http.docker.internal:3128
HTTPS Proxy: http.docker.internal:3128
No Proxy: hubproxy.docker.internal
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5555
127.0.0.0/8
Live Restore Enabled: false
(Ответ: CWWKS1100A: Authentication did not succeed for user ID admin. An invalid user ID or password was specified.
)
Platform MQ Version Credentials
Containers/Docker Any Username: admin Password: passw0rd
Linux or Windows 9.0.2 or above Username: mqadmin Password: mqadmin
Linux or Windows 9.0.1 or below Username: admin Password: admin
Я пытался перезапустить, остановить, запустить и даже воссоздать контейнер Docker несколько раз и получить тот же результат.
Я дважды проверил учетные данные на предмет опечатки или чувствительности к регистру — проблема не решена.
Я попытался найти решение с помощью Google. Не смог найти ничего полезного.
Я попытался проверить консоль веб-браузера на наличие чего-нибудь полезного - ничего.
Я проверил рекомендуемую настройку Docker (версия обновления, ОС Linux) и активность соответствующего образа.
Приложение Docker разрешено через брандмауэр Windows.
Сетевое подключение выглядит нормально, поскольку я могу получить доступ к веб-службе, работающей внутри контейнера Docker, через https://localhost:8031/ibmmq/console/login.html без каких-либо проблем, что указывает на то, что сетевое соединение между моим хост-компьютером и контейнер Docker работает нормально для этого конкретного порта (в данном случае 8031).
Я пытаюсь решить эту проблему самостоятельно и с помощью коллеги, но проблема не решена.
Теперь прошу помощи у могучих интернет-пользователей - что может быть не так и как это исправить?
В последних сборках образа IBM MQ не используются пароли администратора и приложения по умолчанию. Вам нужно будет их указать.
например.
environment:
- LICENSE=accept
- MQ_QMGR_NAME=QM1
- MQ_APP_PASSWORD=${APP_PASSWORD:?err}
- MQ_ADMIN_PASSWORD=${ADMIN_PASSWORD:?err}
Там, где фактические пароли передаются через файл .env
, это выглядит так:
# Uncomment the lines below and set your passwords
# APP_PASSWORD=
# ADMIN_PASSWORD=
Это предназначено для использования и подключения приложения, а не для самого контейнера MQ. Контейнер MQ больше не использует пароли администратора и приложения по умолчанию, и их необходимо указать при запуске образа контейнера MQ.
Вижу, это было быстро и полезно, теперь я могу войти. Спасибо!
я указываю их в
application.yml
, напримерqueue-manager: QM1
,user: admin
,password: passw0rd
, как видно из описания вопроса