A containerized lightweight multi-architecture compatible 3270 emulator.
- Multi-architecture compatibility for
amd64,arm64, ands390x - OpenShift Container Platform (OCP) and Kubernetes compatible
- Mountable configurations and session files with TLS Support
- Minimized image size:
~40MB
Run this image using podman with a specified z/OS hostname/ip and port.
Environment Variables
ZOS_HOST- The hostname or IP address of a reachable z/OS hostZOS_PORT- optional, for specifying a non-default telnet port
Directories & Files
/micro3270- default directory within container, contains basic installation files/micro3270/config- (optional) configuration directory, expected to be volume mounted from container runtime/micro3270/config/.c3270- (optional) configuration file for setting configuration options, will be overwritten by volume mount/micro3270/config/cacert- (optional) directory containing TLS certificates
Launch a terminal application and run one of the following commands.
podman run -it icr.io/zmodstack/micro3270 $ZOS_HOST $ZOS_PORTWith additional command-line options
podman run -it icr.io/zmodstack/micro3270 [options] $ZOS_HOST $ZOS_PORTFor z/OS environments that require TLS connectivity with self-signed certificates, certificates can be placed in the /micro3270/config directory. This can be done via volume mounting with your container runtime, or through copying files directly into the container's ephemeral filesystem.
Using a "rootless" podman environment where the podman-machine does NOT have access to the local machine's filesystem
# Create new empty volume
podman volume create micro3270-config
# Create a temporary micro3270 container with the volume mounted
podman create --name micro3270 -v micro3270-config:/micro3270/config icr.io/zmodstack/micro3270
# Copy files to container with mounted volume
podman cp </path/to/local/cert> micro3270:/micro3270/config/cacert
# Remove temporary container
podman rm micro3270
# Run the micro3270 container
podman run -it --rm --name micro3270 -v micro3270-config:/micro3270/config icr.io/zmodstack/micro3270 [options] $ZOS_HOST $ZOS_PORTTLS certificate verification may be skipped using the c3270 -noverifycert command-line option.
podman run -it --rm --name micro3270 icr.io/zmodstack/micro3270 -noverifycert $ZOS_HOST $ZOS_PORTA custom .c3270 session file may be copied into the /micro3270/config/ directory.
To create a local .c3270 session profile, reference the c3270 command-line options and use the "resource format" seen in the Resource and Further Details column.
Create a .c3270 file for a specific z/OS host, e.g. somezoshost.c3270
c3270.caFile: /micro3270/config/cacert
c3270.hostname: some.zos.host.com
c3270.port: 23
! Set additional resource values as necessary
! c3270.acceptHostname: <private-ip>Copy the somezoshost.c3270 file into your container into the /micro3270/config/.c3270 location.
podman cp </path/to/local/somezoshost.c3270> micro3270:/micro3270/config/.c3270
podman run -it --rm --name micro3270 -v micro3270-config:/micro3270/config icr.io/zmodstack/micro3270