GithubHelp home page GithubHelp logo

Failed to create extended docker image with self customized Dockerfile based on x11docker/deepin. about dockerfile-x11docker-deepin HOT 4 CLOSED

mviereck avatar mviereck commented on June 16, 2024
Failed to create extended docker image with self customized Dockerfile based on x11docker/deepin.

from dockerfile-x11docker-deepin.

Comments (4)

mviereck avatar mviereck commented on June 16, 2024

If the deepin image is not on your system already, x11docker pulls it from docker hub after asking you for permission.
The deepin image on docker hub is an automated build from the Dockerfile in this repository.

You can also pull the image with docker pull x11docker/deepin and run x11docker afterwards.

(You could as well build the image yourself using the Dockerfile with the docker build command.
E.g. docker build -t x11docker/deepin /path/to/Dockerfile/
In that case you don't need to trust the image on docker hub.)

from dockerfile-x11docker-deepin.

hongyi-zhao avatar hongyi-zhao commented on June 16, 2024

If the deepin image is not on your system already, x11docker pulls it from docker hub after asking you for permission.
The deepin image on docker hub is an automated build from the Dockerfile in this repository.

Is this done/managed by continuous integration system? I mean, if you submitted any changes, the image will be re-generated/updated automatically? If so, what's the CI settings used by you for this repo?

You can also pull the image with docker pull x11docker/deepin and run x11docker afterwards.

(You could as well build the image yourself using the Dockerfile with the docker build command.
E.g. docker build -t x11docker/deepin /path/to/Dockerfile/

According to the instructions given by the extending base image, I try to build the deepin-wechat docker image based on x11docker/deepin shown as below:

werner@X10DAi-01:~$ cat aaa/Dockerfile 
FROM x11docker/deepin
RUN env DEBIAN_FRONTEND=noninteractive dpkg --add-architecture i386 && apt-get update
RUN env DEBIAN_FRONTEND=noninteractive apt-get install -y \
    deepin-wine deepin-wine32 deepin-wine32-preloader deepin-wine-helper deepin-wine-uninstaller
RUN env DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
    deepin.com.wechat
werner@X10DAi-01:~$ docker build -t x11docker/deepin-wechat aaa/
Sending build context to Docker daemon  2.048kB
Step 1/4 : FROM x11docker/deepin
 ---> 7458578247ea
Step 2/4 : RUN env DEBIAN_FRONTEND=noninteractive dpkg --add-architecture i386 && apt-get update
 ---> Using cache
 ---> 999d1ac9207f
Step 3/4 : RUN env DEBIAN_FRONTEND=noninteractive apt-get install -y     deepin-wine deepin-wine32 deepin-wine32-preloader deepin-wine-helper deepin-wine-uninstaller
 ---> Running in 2cef7be9cae5
Reading package lists...
Building dependency tree...
Reading state information...
Package deepin-wine-uninstaller:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

Package deepin-wine32 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'deepin-wine32' has no installation candidate
E: Unable to locate package deepin-wine32-preloader
E: Unable to locate package deepin-wine-helper
E: Package 'deepin-wine-uninstaller:i386' has no installation candidate
The command '/bin/sh -c env DEBIAN_FRONTEND=noninteractive apt-get install -y     deepin-wine deepin-wine32 deepin-wine32-preloader deepin-wine-helper deepin-wine-uninstaller' returned a non-zero code: 100

The 127.0.0.1:8080 is local working http proxy for docker set by me. See the following testing result for more info:

werner@X10DAi-01:~$ curl -vI -x http://127.0.0.1:8080 www.baidu.com
*   Trying 127.0.0.1:8080...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 8080 (#0)
> HEAD http://www.baidu.com/ HTTP/1.1
> Host: www.baidu.com
> User-Agent: curl/7.68.0
> Accept: */*
> Proxy-Connection: Keep-Alive
> 
* Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
HTTP/1.1 200 OK
< Accept-Ranges: bytes
Accept-Ranges: bytes
< Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
Cache-Control: private, no-cache, no-store, proxy-revalidate, no-transform
< Connection: keep-alive
Connection: keep-alive
< Content-Length: 277
Content-Length: 277
< Content-Type: text/html
Content-Type: text/html
< Date: Sat, 24 Oct 2020 23:53:57 GMT
Date: Sat, 24 Oct 2020 23:53:57 GMT
< Etag: "575e1f6f-115"
Etag: "575e1f6f-115"
< Last-Modified: Mon, 13 Jun 2016 02:50:23 GMT
Last-Modified: Mon, 13 Jun 2016 02:50:23 GMT
< Pragma: no-cache
Pragma: no-cache
< Server: bfe/1.0.8.18
Server: bfe/1.0.8.18

< 
* Connection #0 to host 127.0.0.1 left intact

Any hints for this problem?

In that case you don't need to trust the image on docker hub.)

I have learned that the speed ​​limit will be imposed on docker hub for image pulling, so for the huge docker image, may be the most efficient way is to build it this way.

from dockerfile-x11docker-deepin.

mviereck avatar mviereck commented on June 16, 2024

I mean, if you submitted any changes, the image will be re-generated/updated automatically? If so, what's the CI settings used by you for this repo?

If I change the github repository, the image is rebuilt automatically. I did a setting on docker hub that allows docker hub to access the github repository and to watch for changes.
Compare: https://docs.docker.com/docker-hub/builds/
Alternatively, I can send a command to force a rebuild. It is called a webhook: https://docs.docker.com/docker-hub/webhooks/

According to the instructions given by the extending base image, I try to build the deepin-wechat docker image using x11docker/deepin as the base image.

This worked here a few weeks ago. Not sure why it fails on your system. I'll try to reproduce the issue, running a build now. This will take some time due to low bandwidth. I'll report back if the build succeeds or fails here.
EDIT: The build succeeds here. Likely it will help to change the repository mirror as described below and in #7 .

I have learned that the speed ​​limit will be imposed on docker hub for image pulling, so for the huge docker image, may be the most efficient way is to build it this way.

If you want to build the entire x11docker/deepin base image yourself, you might want to change the deepin mirror repository. In the Dockerfile:

# choose a mirror
#RUN echo "deb http://packages.deepin.com/deepin/ lion main non-free contrib" > /etc/apt/sources.list
RUN echo "deb http://mirrors.kernel.org/deepin/  lion main non-free contrib" > /etc/apt/sources.list
#RUN echo "deb http://ftp.fau.de/deepin/          lion main non-free contrib" > /etc/apt/sources.list

In China the fastest mirror should be the first one, so change to:

# choose a mirror
RUN echo "deb http://packages.deepin.com/deepin/ lion main non-free contrib" > /etc/apt/sources.list
#RUN echo "deb http://mirrors.kernel.org/deepin/  lion main non-free contrib" > /etc/apt/sources.list
#RUN echo "deb http://ftp.fau.de/deepin/          lion main non-free contrib" > /etc/apt/sources.list

You could as well add this in your extended Dockerfile, like:

FROM x11docker/deepin
RUN echo "deb http://packages.deepin.com/deepin/ lion main non-free contrib" > /etc/apt/sources.list
RUN apt-get update
[...]

from dockerfile-x11docker-deepin.

mviereck avatar mviereck commented on June 16, 2024

Closing here, we work on the DNS issue in #7 .

from dockerfile-x11docker-deepin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.