问题:
在虚拟机中启动容器提示资源不足。
描述:
我是 win7 系统,没法安装 Docker Desktop,因此我安装了 dockertoolbox 来跑 docker engine。我将一个简单的 SpringBoot 应用构建成镜像,
DockerFIle 如下:
FROM 192.168.83.113:5000/eclipse-temurin:8-jre
LABEL author="xueliandan0123@gmail.com"
ARG JAR_FILE
RUN echo $(pwd)
ADD ./target/${JAR_FILE} /app.jar
ENV TZ=Asia/Shanghai JAVA_OPTS="-Xms64m -Xmx64m -Xss512k"
EXPOSE 8080
#CMD java ${JAVA_OPTS} -Djava.security.egd-file:/dev/./urandom -jar app.jar
CMD java ${JAVA_OPTS} -jar app.jar
然后我本地 docker run 一个容器,命令如下
docker run -d -p 8080:8080 --name boot_demo --memory=512m 192.168.83.113:5000/xld/boot_demo:1.0
容器启动后就秒退,报错如下:
docker@default:~$ docker logs 436
Error occurred during initialization of VM
Cannot create VM thread. Out of system resources.
尝试的方法:
我试着将 virtual box 创建的虚拟机的内存调到了 2G,但是启动容器还是说资源不足。
我又试着修改了构建命令的 JAVA_OPTS,将堆内存调小,还是说内存不足。
我也切换到了 root 用户去执行 run 命令,还是不行。
我也试着在 run 时,带上一些限制参数
docker run -d -p 8080:8080 --memory=512m --cpus=1 --ulimit nproc=4096 --ulimit nofile=4096 192.168.83.113:5000/xld/boot_demo:1.0
但是也不行。
环境:
操作系统:win7
docker 版本:
docker@default:~$ docker info
Client:
Debug Mode: false
Server:
Containers: 1
Running: 0
Paused: 0
Stopped: 1
Images: 8
Server Version: 19.03.12
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 7ad184331fa3e55e52b890ea95e65ba581ae3429
runc version: dc9208a3303feef5b3839f4323d9beb36df0a9dd
init version: fec3683
Security Options:
seccomp
Profile: default
Kernel Version: 4.19.130-boot2docker
Operating System: Boot2Docker 19.03.12 (TCL 10.1)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 1.947GiB
Name: default
ID: G5B7:RY7S:OLM4:RMIA:THCC:ZZOO:GMN7:NXJZ:BLAV:QM3H:LYRF:H5NY
Docker Root Dir: /mnt/sda1/var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
provider=virtualbox
Experimental: false
Insecure Registries:
192.168.83.113:5000
192.168.83.113:5001
127.0.0.0/8
Live Restore Enabled: false
Product License: Community Engine
还请友友不吝赐教,非常感谢!