Python 3 Client app in docker

I have a python daemon that runs as a standalone app which access a Couchbase database.
I want to put the daemon app in a docker container.

I am having issues with getting the couchbase dependencies for
libcouchbase-devel, libcouchbase2-bin, gcc, gcc-c++
to install .

Dockerfile-----------------------------------------------------------

FROM python:3.7
COPY requirements.txt requirements.txt

ENV http_proxy http://genproxy.amdocs.com:8080/
ENV https_proxy http://genproxy.amdocs.com:8080/

WORKDIR /atomiq_services

RUN apt-get update
RUN apt-get install -y libcouchbase-devel libcouchbase2-bin gcc gcc-c++

RUN pip install -r requirements.txt


Any tips on setting up dockerfile or do you have a premade docker file i could use as a baseline.

Thanks

Error doing docker-compose

 ---> Running in 93d6bc5327f4
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package libcouchbase-devel
E: Unable to locate package libcouchbase2-bin
E: Unable to locate package gcc-c+
E: Couldn't find any package by regex 'gcc-c+'

Hello @Alan_Ennen,

I think the issue is that apt-get cannot find the package gcc-c+.
I believe that the incorrect name of the package on Ubuntu or Debian, and the correct name is g++

Change the line in the Dockerfile, might fix the problem.

RUN apt-get install -y libcouchbase-devel libcouchbase2-bin gcc g++

Updated docker file:

RUN apt-get update
RUN apt-get install -y libcouchbase-devel libcouchbase2-bin gcc g++
Step 7/10 : RUN apt-get install -y libcouchbase-devel libcouchbase2-bin gcc g++
 ---> Running in c4000195fbbc
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package libcouchbase-devel
E: Unable to locate package libcouchbase2-bin
ERROR: Service 'web' failed to build: The command '/bin/sh -c apt-get install -y libcouchbase-devel libcouchbase2-bin gcc g++' returned a non-zero code: 100

This is another apt-get issue, I suspect the docker image does not have the Couchbase repo installed. The document explains how to add the Couchbase repo and install libcouchbase

Need to add these steps to the Docker file:

wget http://packages.couchbase.com/releases/couchbase-release/couchbase-release-1.0-6-amd64.deb
sudo dpkg -i couchbase-release-1.0-6-amd64.deb
sudo apt-get install -y  libcouchbase-dev libcouchbase2-bin build-essential

Build-essential will install a number of key build tools including gcc and g++

Don’t suppose anyone know of a Dockerfile with Python and Coucbase client already working that i could use as a base.

Step 6/11 : RUN wget http://packages.couchbase.com/releases/couchbase-release/couchbase-release-1.0-6-amd64.deb
 ---> Using cache
 ---> 4423cc70b92b
Step 7/11 : RUN dpkg -i couchbase-release-1.0-6-amd64.deb
 ---> Running in 8de7504ce54f
Selecting previously unselected package couchbase-release.
(Reading database ... 24525 files and directories currently installed.)
Preparing to unpack couchbase-release-1.0-6-amd64.deb ...
/var/lib/dpkg/tmp.ci/preinst: line 3: lsb_release: command not found
Supported platforms are: Debian/wheezy,jessie,stretch and Ubuntu/precise,trusty,xenial,bionic
dpkg: error processing archive couchbase-release-1.0-6-amd64.deb (--install):
 new couchbase-release package pre-installation script subprocess returned error exit status 1
Errors were encountered while processing:
 couchbase-release-1.0-6-amd64.deb

Hey @Alan_Ennen,

did you solve the problem? I’m getting the same error.

Regards,
Kris