我知道intellij有一个docker容器插件,但它似乎不允许我在容器内部开发。这个想法很简单,我不想让我的主机配置正确的环境工具。我只是一个docker容器设置,然后使用intellij在容器本身中查找libs,function等。
这对c ++,java和scala dev非常有帮助。此外,调试也很有用。
因此可以在intellij?
的docker容器中进行开发答案 0 :(得分:3)
所以你只想在容器内工作,就像在一个成熟的虚拟机中一样,对吧?然后,您应该只运行一个容器,附加一个显示(运行IDEA)并开始配置您的开发环境。对于显示部分,我将测试Can you run GUI apps in a docker container?中给出的一些答案。本主题中有一些非常酷的答案,显示了在容器中运行GUI应用程序的各种方法。
答案 1 :(得分:2)
请查看基于Alpine Linux的Intellij IDEA CI和JDK8的示例(在此处获取) https://raw.githubusercontent.com/shaharv/docker/master/alpine/dev/Dockerfile)
# Alpine 3.8 C++/Java Developer Image
#
# For IntelliJ and GUI (X11), run the image with:
# $ XSOCK=/tmp/.X11-unix && sudo docker run -i -v $XSOCK:$XSOCK -e DISPLAY -u developer -t [image-name]
#
# Then run IntelliJ with:
# /idea-IC-191.6707.61/bin/idea.sh
FROM alpine:3.8
ENV LANG C.UTF-8
RUN set -ex && \
apk add --no-cache --update \
# basic packages
bash bash-completion coreutils file grep openssl openssh nano sudo tar xz \
# debug tools
gdb musl-dbg strace \
# docs and man
bash-doc man man-pages less less-doc \
# GUI fonts
font-noto \
# user utils
shadow
RUN set -ex && \
apk add --no-cache --update \
# C++ build tools
cmake g++ git linux-headers libpthread-stubs make
RUN set -ex && \
apk add --no-cache --update \
# Java tools
gradle openjdk8 openjdk8-dbg
# Install IntelliJ Community
RUN set -ex && \
wget https://download-cf.jetbrains.com/idea/ideaIC-2019.1.1-no-jbr.tar.gz && \
tar -xf ideaIC-2019.1.1-no-jbr.tar.gz && \
rm ideaIC-2019.1.1-no-jbr.tar.gz
# Create a new user with no password
ENV USERNAME developer
RUN set -ex && \
useradd --create-home --key MAIL_DIR=/dev/null --shell /bin/bash $USERNAME && \
passwd -d $USERNAME
# Set additional environment variables
ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk
ENV JDK_HOME /usr/lib/jvm/java-1.8-openjdk
ENV JAVA_EXE /usr/lib/jvm/java-1.8-openjdk/bin/java
答案 2 :(得分:0)
该方法不是: 有本地存储库和本地IDE。在存储库中,有docker文件,最后是docker-compose.yml,它启动了运行项目所需的环境。 将带有源的本地驱动器挂载到docker(卷)中,因此在本地文件夹中所做的更改会反映在docker中,与其他方向类似。