Use docker's in-container shell with cygwin [docker exec -it bash]

Use docker's in-container shell with cygwin

environment

Overview

It didn't work as it was, so I decided to leave it as a memorandum.

$ apt-cyg install gcc-g++
Cache directory is /packages
Mirror is http://mirrors.kernel.org/sourceware/cygwin
--2020-09-10 17:31:34--  https://cygwin.com/key/pubring.asc
cygwin.com (cygwin.com)Is inquiring to DNS... 8.43.85.97
cygwin.com (cygwin.com)|8.43.85.97|:Connecting to 443...Connected.
You have sent an HTTP connection request, waiting for a response... 200 OK
length: 3049 (3.0K) [text/plain]
`/tmp/tmp.2B5Pa48nYk'Saving in

/tmp/tmp.2B5Pa48nYk                               100%[=============================================================================================================>]   2.98K  --.-KB/s time 0s

2020-09-10 17:31:35 (12.5 MB/s) - `/tmp/tmp.2B5Pa48nYk'Save to[3049/3049]

TRUSTEDKEY_CYGWIN: FAILED: Hash does not match https://cygwin.com/key/pubring.asc.
Error: TRUSTEDKEY_CYGWIN has been updated, maybe. But sometimes it may has been cracked. Be careful !!!
at : /usr/local/bin/apt-cyg: fetch_trustedkeys: 745

$ docker exec -it busy_williamson bash
the input device is not a TTY.  If you are using mintty, try prefixing the command with 'winpty'

apt-cyg update

--download apt-cyg

$ cd /usr/local/bin
$ wget https://raw.githubusercontent.com/kou1okada/apt-cyg/master/apt-cyg
--2020-09-10 17:39:36--  https://raw.githubusercontent.com/kou1okada/apt-cyg/master/apt-cyg
raw.githubusercontent.com (raw.githubusercontent.com)Is inquiring to DNS... 151.101.108.133
raw.githubusercontent.com (raw.githubusercontent.com)|151.101.108.133|:Connecting to 443...Connected.
You have sent an HTTP connection request, waiting for a response... 200 OK
length: 68542 (67K) [text/plain]
`apt-cyg.1'Saving in

apt-cyg.1                                         100%[=============================================================================================================>]  66.94K  --.-KB/s time 0.03s

2020-09-10 17:39:48 (2.40 MB/s) - `apt-cyg.1'Save to[68542/68542]

--Replacement of apt-cyg

rm apt-cyg
mv apt-cyg.1 apt-cyg
chmod +x apt-cyg

install winpty

--Install gcc-g ++, mingw64-x86_64-gcc-g ++

$ apt-cyg install gcc-g++
$ apt-cyg install mingw64-x86_64-gcc-g++

--Install winpty

$mkdir winpty (Please prepare the download directory as appropriate)
$ cd winpty

$ wget https://github.com/rprichard/winpty/archive/master.zip
$ unzip master.zip

$ cd winpty-master/
$ ./configure
$ make
$ make install

docker exec -it bash --Use container console

winpty docker exec -it busy_williamson bash

Thank you for your hard work!

Recommended Posts

Use docker's in-container shell with cygwin [docker exec -it bash]
Use Puphpeteer with Docker
Use ngrok with Docker
Use GDAL with Python with Docker
Use SDKMAN! With Git Bash
[Docker] Use whenever with Docker + Rails
You are required to use winpty with docker exec [Windows]
Use java with MSYS and Cygwin
Why use orchestration tools with Docker
Use cuda11.0 with pytorch using Docker
[Rails] How to use rails console with docker
Use Symbolic Link with Docker multi-stage builds
Use ZStandard with .NET Core + Docker (Alpine)