简体   繁体   中英

How to solve Docker error code 139 on Manjaro?

I recently installed Manjaro on my Computer and I'm doing a few tests. I tried to build and lanch a Docker which works perfectly on Windows, Mac Os, Ubuntu, etc.

But when I run sudo docker-compose up I get an error. Everything seems to work fine except at the end:

Successfully built d72aa4c69ad6
Successfully tagged code_interface:latest
WARNING: Image for service interface was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.
Creating code_db_1 ... done
Creating code_web_1 ... done
Creating code_interface_1 ... done
Attaching to code_db_1, code_web_1, code_interface_1
code_db_1 exited with code 139

Here's what my docker-compose.yml looks like:

db:
  image: mongo:3.0.2
  ports:
    - "27017:27017"

web:
  build: X
  ports:
    - "5000:5000"
  links:
    - db

interface:
  build: Y
  ports:
    - "8080:8080"
  links:
    - web

Any idea why I get this error or how to fix it ?

as far as i know error 139 is a segmentation fault raised by hardware with memory protection. it tells you that your programm is trying to access a restricted area of memory. maybe you try to get access to read only memory, got a null pointer dereference anywhere in your code or produced a stack overflow.

This may be related with the kernel version of your computer, like reported in this issue :

This is probably related to the changes in vsyscall linking in the 4.11 kernel. Try booting the kernel with vsyscall=emulate and see if it helps. This does run ok under the linuxkit 4.11 kernel config without issues, so it is to do with the config.

Try to implement the solution from this comment :

Hi, specifying this command in /etc/default/grub:

GRUB_CMDLINE_LINUX_DEFAULT="vsyscall=emulate"

Let us know if it solves the issue for you.

Finally made it work.

I had to update my kernel to the last version (from 4.19.16-1 to 4.20.3-1). Don't really know why though.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM