Merge pull request #281 from AJNOURI/master

Add centos appliance / Network automation container with Pycharm
This commit is contained in:
Jeremy Grossmann 2017-10-26 15:30:42 +07:00 committed by GitHub
commit 46b9e8a92a
3 changed files with 105 additions and 0 deletions

45
appliances/centos7.gns3a Normal file
View File

@ -0,0 +1,45 @@
{
"name": "Centos",
"category": "guest",
"description": "The CentOS Linux distribution is a stable, predictable, manageable and reproducible platform derived from the sources of Red Hat Enterprise Linux (RHEL). We are now looking to expand on that by creating the resources needed by other communities to come together and be able to build on the CentOS Linux platform. And today we start the process by delivering a clear governance model, increased transparency and access. In the coming weeks we aim to publish our own roadmap that includes variants of the core CentOS Linux.",
"vendor_name": "CentOS Linux",
"vendor_url": "https://www.centos.org/",
"documentation_url": "https://wiki.centos.org/",
"product_name": "Centos",
"product_url": "https://www.centos.org/download/",
"registry_version": 5,
"status": "stable",
"maintainer": "GNS3 Team",
"maintainer_email": "developers@gns3.net",
"usage": "Username: osboxes.org\nPassword: osboxes.org",
"port_name_format": "eth{0}",
"qemu": {
"adapter_type": "virtio-net-pci",
"adapters": 1,
"ram": 2048,
"hda_disk_interface": "ide",
"arch": "x86_64",
"console_type": "spice",
"boot_priority": "c",
"kvm": "require",
"options": "-vga qxl"
},
"images": [
{
"filename": "CentOS 7-1611 (64bit).vmdk",
"version": "7-1611",
"md5sum": "1da15f6144eab25c8546f81dd1c34092",
"filesize": 4365877248,
"download_url": "http://www.osboxes.org/centos/"
}
],
"versions": [
{
"name": "7-1611",
"images": {
"hda_disk_image": "CentOS 7-1611 (64bit).vmdk"
}
}
]
}

View File

@ -0,0 +1,56 @@
FROM phusion/baseimage:0.9.22
# Use baseimage-docker's init system.
CMD ["/sbin/my_init"]
# Tell debconf to run in non-interactive mode
ENV DEBIAN_FRONTEND noninteractive
ENV PYCHARM_HOME=/etc/pycharm
RUN apt-get update && apt-get -y --no-install-recommends install \
wget \
git \
openjdk-9-jre \
libxrender1 \
libxtst6 \
python \
python3 \
curl \
openssh-client \
nano \
vim \
iputils-ping \
python \
build-essential \
libssl-dev \
libffi-dev \
python-pip \
python-setuptools \
python3-setuptools \
python-dev \
net-tools \
telnet \
software-properties-common \
&& apt-add-repository -y ppa:ansible/ansible \
&& apt-get update && apt-get -y --no-install-recommends install ansible \
&& pip install --upgrade pip \
&& pip install cryptography netmiko napalm pyntc \
&& pip install --upgrade paramiko \
&& pip install pexpect \
&& pip install docopt==0.6.2 sh
RUN export JAVA_HOME=/usr/lib/jvm/default-java
RUN wget https://download.jetbrains.com/python/pycharm-community-2017.2.3.tar.gz
RUN mkdir ${PYCHARM_HOME} && tar -xzvf pycharm-community-2017.2.3.tar.gz -C ${PYCHARM_HOME} --strip=1 &&\
wget -P /tmp/ https://bootstrap.pypa.io/get-pip.py && python /tmp/get-pip.py &&\
rm -rf /var/lib/apt-lists; rm -rf /tmp/*; apt-get purge wget -y; apt-get autoremove -y
RUN mkdir /scripts
RUN mkdir /etc/sv/pycharm
ADD pycharm-run /etc/sv/pycharm/run
RUN chmod a+x /etc/sv/pycharm/run
RUN ln -s /etc/sv/pycharm /etc/service
VOLUME /root /scripts

View File

@ -0,0 +1,4 @@
#!/bin/bash
exec 2>&1
exec /etc/pycharm/bin/pycharm.sh